日期:2014-05-17  浏览次数:20503 次

【翻译】用PHP取得字符串的长度(strlen,mb_strlen)
取得字符串的长度。
strlen
int strlen(string str)

取得指定为参数的字符串的长度。因为取得的是字节数,所以半角文字为1字节,全角文字为2字节。

参数:
  str 对象的字符串
返回值:
  字符串的字节数

关于半角文字和全角文字的长度,举例如下:
strlen('abc') --> 3
strlen('あいう') --> 6
strlen('abcあいう') --> 9

不是取得字节数,而是取得文字数的情形,则使用[mb_strlen]函数。不过半角文字还是全角文字,
都按1文字进行处理。
mb_strlen
int mb_strlen(string str [, string encoding])

参数:
  string 对象的字符串
  encoding 对象的字符串的文字编码

返回值:
  字符串的文字(个)数

下面实际测试看看。
<html>
<head><title>PHP TEST</title></head>
<body>

<?php

$str1 = 'abcde';
$str_len1 = strlen($str1);
$str_mblen1 = mb_strlen($str1);

$str2 = '10時20分';
$str_len2 = strlen($str2);
$str_mblen2 = mb_strlen($str2);

print($str1.' の文字列の長さは'.$str_len1.'です<br>');
print($str1.' の文字数は'.$str_mblen1.'です<br><br>');

print($str2.' の文字列の長さは'.$str_len2.'です<br>');
print($str2.' の文字数は'.$str_mblen2.'です<br><br>');

?>
</body>
</html>

把上述文件发布到WEB服务器,经由浏览器访问,显示结果如下。