1

我有一个隐藏字符没有出现在数据库(phpmyadmin)或网站中的问题。网站有 utf-8 字符编码。如果我将带有“隐藏”字符的字符串复制/粘贴到记事本中,我可以看到它。它看起来就像一个子弹字符,但被隐藏了。这是什么类型的字符,可以用 PHP 删除吗?

能够输入此字符的用户正在使用 Mac,并且可能正在将文档(可能是 unicode?)复制/粘贴到我们网站上的表单中并保存。所以这个字符在 utf-8 编码中不可见,但如果我将字符串复制到记事本文档中则可见。

这是字符串末尾的隐藏字符。看起来像子弹:

4

1 回答 1

2

复制角色,然后启动 PowerShell 并执行以下操作(是的,这很复杂,抱歉):

'U+{0:X4}'-f+[char]'<PASTE>'

并将字符粘贴到它说的位置<PASTE>。它应该为您提供该字符的 Unicode 代码点。然后,您应该能够编写将其从字符串中删除的内容,但在我看来,不应该有任何破坏文档布局的输入,除了 RTL 标记之类的有趣内容。


上面的简短解释:[char]'x'将单个字符串转换为 char,+然后将其视为数字(类似于[int],但更短)。其余的是格式字符串和格式运算符-f

于 2012-08-31T08:55:20.553 回答