【发布时间】:2012-09-06 12:24:33
【问题描述】:
我有 2 个字符串 "CHILDREN’S"。
其中一个被保存到 MySQL 数据库中(实际上它是一个页面标题,来自 WordPress)。另一个是数据库中字符串的复制和粘贴版本。
当我在 2 个字符串 (var_dump("CHILDREN’S"); var_dump($string)) 上运行 var_dump 时,复制粘贴的字符串是 string(12) "CHILDREN’S",而从数据库中显示的字符串是 string(16) "CHILDREN’S"。我假设这是一个 UTF-8 问题。
有人能解释一下为什么相同的字符串实际上是不相同的吗?
【问题讨论】:
-
是否可以在可见文本周围有空格,或者在字符串中的某处有不可见字符?
-
那里很可能有一个 unicode 字符。
-
那个撇号肯定不是
'。 -
浏览器不要复制粘贴,查看HTML代码然后复制粘贴到这里..你会看到隐藏的字符
-
你有没有检查过它不是一个 HTML 实体——例如
&#xxxx;在一个版本中? (当您执行var_dump()时,请尝试页面上的“查看源代码”以确保)这将足以弥补字符串长度的差异。
标签: php string wordpress utf-8