php判断输入不超过mysql的varchar字段的长度范围
更新时间:2011年06月24日 21:52:39 作者:
varchar类型字段,如果你设置长度为10,那么不论汉字和英文都可以存10个。
但是如果在utf-8编码下,一个汉字是占3个字符长度的,比如字符串$str=”你好啊!!”;
如果你用strlen函数来判断,长度是11,正好超过了varchar的长度,但实际上确不是这样,如果直接到phpmyadmin里面执行insert语句,这条字符串是可以插入的!
对于数据库来说,它的长度是5,那么我们如何用PHP来得到这个长度呢?使用iconv_strlen()函数!
echo iconv_strlen($str,'utf-8′);
注意第二个参数,是当前字符集,这样根据不同的字符集你得到的结果都是根据一个字符占一个长度计算来的!
上面的语句,将输出5,怎么样,你会判断了吗?
如果你用strlen函数来判断,长度是11,正好超过了varchar的长度,但实际上确不是这样,如果直接到phpmyadmin里面执行insert语句,这条字符串是可以插入的!
对于数据库来说,它的长度是5,那么我们如何用PHP来得到这个长度呢?使用iconv_strlen()函数!
echo iconv_strlen($str,'utf-8′);
注意第二个参数,是当前字符集,这样根据不同的字符集你得到的结果都是根据一个字符占一个长度计算来的!
上面的语句,将输出5,怎么样,你会判断了吗?
相关文章
php array_map使用自定义的函数处理数组中的每个值
这篇文章主要介绍了php array_map使用自定义的函数处理数组中的每个值的相关资料,需要的朋友可以参考下2016-10-10
最新评论