Php 函数strlen()未返回正确的长度

Php 函数strlen()未返回正确的长度,php,strlen,Php,Strlen,我不知道strlen()为什么不返回正确长度的字符串。实际长度为29,但strlen()返回41。请帮忙 $str = htmlentities('<td bgcolor=#FFFFFF>2-0</td>'); echo strlen($str); $str=htmlentities('2-0'); 埃科·斯特伦($str); 包含转义HTML实体的字符串是: &lt;td bgcolor=#FFFFFF&gt;2-0&lt;/td&gt

我不知道strlen()为什么不返回正确长度的字符串。实际长度为29,但strlen()返回41。请帮忙

$str = htmlentities('<td bgcolor=#FFFFFF>2-0</td>');
echo strlen($str);
$str=htmlentities('2-0');
埃科·斯特伦($str);

包含转义HTML实体的字符串是:

&lt;td bgcolor=#FFFFFF&gt;2-0&lt;/td&gt;
此字符串的长度为40个字符(而不是您在问题中所说的41个字符),调用
strlen()
正确返回

如果不转义HTML实体,则长度为28(而不是29)

echo strlen('2-0');//28
echo strlen(htmlentities('2-0'));//40

好的,我刚刚使用html实体解码得到了正确的长度。无论如何,谢谢你的帮助;)“你好,我的朋友。”bambostar如果这里有人的答案帮助你解决了问题,点击左边的绿色复选标记接受答案是礼貌的。这是一种表达你感激之情的方式,它可以确保你的问题不会永远没有答案。我刚刚做了反馈。谢谢盖斯敦。谢谢各位。
echo strlen('<td bgcolor=#FFFFFF>2-0</td>'); // 28
echo strlen(htmlentities('<td bgcolor=#FFFFFF>2-0</td>')); // 40