php判断输入不超过mysql的varchar字段的长度范围

yipeiwu_com6年前Mysql基础
但是如果在utf-8编码下,一个汉字是占3个字符长度的,比如字符串$str=”你好啊!!”;

如果你用strlen函数来判断,长度是11,正好超过了varchar的长度,但实际上确不是这样,如果直接到phpmyadmin里面执行insert语句,这条字符串是可以插入的!

对于数据库来说,它的长度是5,那么我们如何用PHP来得到这个长度呢?使用iconv_strlen()函数!

echo iconv_strlen($str,'utf-8′);

注意第二个参数,是当前字符集,这样根据不同的字符集你得到的结果都是根据一个字符占一个长度计算来的!

上面的语句,将输出5,怎么样,你会判断了吗?

相关文章

PHP+MYSQL 出现乱码的解决方法

肯定都已经解决了JSP里的乱码问题,不过还是有些人的MYSQL乱码问题没有得到解决,包括我自己,所以又找了一些资料,希望这次能完全解决MYSQL数据库的乱码问题。  第一种方法...

PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\

PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\

今天在家启动PHP环境的时候,突然发现不能加载php_mysqli.dll了,网上找了一圈,没有解决方案! 在群里面受一哥们儿的启发,竟然解决了,如果你的问题还没有解决,请按下面的方法试...

php的慢速日志引起的Mysql错误问题分析

在我们的项目中,开启PHP的慢速日志(request_slowlog_timeout = 10s)是必选项,并且它也让我们发现了很多坑,解决了很多的性能问题。 昨天由于碰到了一个非常奇怪...

PHP读取ACCESS数据到MYSQL的代码

复制代码 代码如下: <?php header('ontent-Type:text/html;charset=GB2312');//避免输出乱码 $dbhost ="localho...

PHP+mysql实现的三级联动菜单功能示例

本文实例讲述了PHP+mysql实现的三级联动菜单功能。分享给大家供大家参考,具体如下: 数据库mysql -- 数据库: `student` -- -- -------------...