php - utf-8(PHP,str_replace)中是否有不同类型的双引号?

标签 php utf-8 quotes

在 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/

相关文章:

javascript - 刷新页面并调用同一个 anchor

php - 在 WordPress 网站上被黑 这是做什么 #c3284d#

javascript - 如何在nodejs中将UTF16文件转换为UTF8文件

mysql - MySQL 中何时使用单引号、双引号和反引号

mysql - MySQL 中何时使用单引号、双引号和反引号

php - Laravel 护照安装错误

php - UTF8工作流程PHP、MySQL总结

csv - 读取CSV时如何指定编码格式?

javascript - 将带有双引号和单引号的字符串从 asp 传递到 javascript 函数

php - 索引页脚很古怪