如何避免在php中回声字符65279?
2022-08-30 13:02:42
我在这里(和其他地方)遇到了类似的问题 - 就像在ajax回调上一样,我得到一个xmlhttp.responseText,它似乎没问题(当我提醒它时 - 它显示了正确的文本) - 但是当使用'if'语句将其与字符串进行比较时 - 它返回false。
(我也是编写返回该字符串的服务器端代码的人) - 在对字符串进行了大量研究之后 - 我发现该字符串的第一个字符具有“不可见字符”。未显示的角色。如果我将其复制到记事本 - 然后删除了第一个字符 - 它不会删除,直到再次按“删除”。
我在xmlhttp.responseText中为返回的字符串做了一个字符CodeAt(0)。它返回了65279。
谷歌搜索它显示它是某种UTF-8控制字符,应该设置“大端”或“小端”编码。
所以,现在我知道问题的原因 - 但是...为什么这个角色会被回声?在源代码php中,我只是使用
echo 'the string'...
它显然以某种方式输出[chr(65279)]字符串...
为什么?我该如何避免它?