PHP str_replace 遇到撇号时不工作

PHP str_replace not working when encounter apostrophe

我想对字符串进行 str_replace。 字符串是"Qualité de l'air",修改后的字符串应该是"Qualitdelair"。

我的代码是:

$string = "Qualité de l'air";
$newString = str_replace(array("é", " ", "'"), "", $string);

我也试过:

$string = "Qualité de l'air";
$newString = str_replace(array("é", " ", "\'"), "", $string);

和:

$string = "Qualité de l'air";
$newString = str_replace(array("é", " ", "'"), "", $string);

我不知道为什么它不起作用。

您似乎将一些特殊字符编码为实体。

使用 html_entity_decode() 将它们还原为文字字符,然后 运行 str_replace:

$newString = str_replace(array("é", " ", "'"), "", html_entity_decode($string));