为什么以下字符串的长度不同,尽管字符串中的字符数相同
echo strlen("馐 馑 馒 馓 馔 馕 首 馗 馘")."<BR>"; echo strlen("Ɛ Ƒ ƒ Ɠ Ɣ ƕ Ɩ Ɨ Ƙ")."<BR>";
35 26
第一批字符每个占用三个字节,因为它们在39,000字的字符列表中是向下的,而第二组每个只占用两个字节,大约为400字节.(每个字符串所需的字节数/八位字节数)字符在
UTF-8 wikipedia article中讨论.)
strlen计算字符串占用的字节数,这会在Unicode中产生奇怪的结果.