本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
php怎么判断字符串是几位
判断字符串是几位,也就是判断字符串有几个字符,即获取字符串长度。
php中提供了两个内置函数来获取字符串长度。
strlen() :获取英文字符串长度
在strlen() 函数中,数字、英文、小数点、下划线和空格占一个字符长度;而一个 GB2312 编码的汉字占两个字符长度,一个 UTF-8 编码的汉字占三个字符长度。
mb_strlen():获取中文或英文字符串长度
在 mb_strlen() 函数中,无论是汉字,还是英文、数字、小数点、下划线和空格,都只占一个字符长度。
1、使用strlen() 函数
<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello world!";
echo '字符串 “'.$str.'” 是:'.strlen($str).' 位的<br>';
$str = "12365";
echo '字符串 “'.$str.'” 是:'.strlen($str).' 位的<br>';
?>
2、使用mb_strlen()函数
mb_strlen($str ,$encoding)
可以通过设置字符编码从而返回对应的字符数,很好的处理了中文字符串的长度问题。
mb_strlen() 函数的返回值为具有 $encoding
编码的字符串 $str
所包含的字符数,如果 $encoding
无效则返回 false。
<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello world!,#%&*@";
echo '字符串 “'.$str.'” 是:'.mb_strlen($str).' 位的<br>';
$str = "欢迎来到PHP中文网";
echo '字符串 “'.$str.'” 是:'.mb_strlen($str,"utf-8").' 位的<br>';
?>