在 PHP 5.3 中,我试图这样替换字符串中的双引号:
$bar = str_replace('"','\'',$foo);
但是一些保存在 utf8 数据库中的引号没有被替换,尽管它们看起来非常正常:
“一些文本”
我必须搜索不同的字符类型吗? 如果有,它们是哪些?
最佳答案
有很多字符看起来像引号,但大多数都很少使用。用的比较多的是这三个:
" U+0022 QUOTATION MARK
“ U+201C LEFT DOUBLE QUOTATION MARK
” U+201D RIGHT DOUBLE QUOTATION MARK
一些比较罕见的是 FULLWIDTH QUOTATION MARK、DITTO MARK、DOUBLE PRIME、DOUBLE PRIME QUOTATION MARK 等等。 Unicode.org“混淆”工具发现 15 characters similar to "
.
为什么不复制并粘贴有问题的字符,以便我们识别它?或者您可以使用 HEX 函数获取字符的十六进制编码,这是识别它的另一种方式。
关于php - utf-8(PHP,str_replace)中是否有不同类型的双引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18735921/