2017-03-07 18 views
1

文字列にstr_replaceを実行したい。 文字列が「Qualitéde l'air」で、変更された文字列が「Qualitdelair」である必要があります。アポストロフィが発生したときにPHP str_replaceが動作しない

私のコードは次のとおりです。私も試した

$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); 

を。

+0

変更された文字列が何をすべきですか? – feedMe

+0

$ newStringは "Qualitdelair"である必要があります –

+0

[あなたのコードは動作します](https://ideone.com/LdbVWm)。あなたはそのコードのどこかで 'htmlentities()'を使いましたか? '$ NEWSTRING = str_replace(配列( "E"、 ""、 "お試し " ")、 ""、がhtml_entity_decode($文字列)); ' –

答えて

0

エンティティとしてエンコードされた特殊文字があるようです。

html_entity_decode()とリテラル文字にそれらを元に戻し、その後str_replace実行します

$newString = str_replace(array("é", " ", "'"), "", html_entity_decode($string)); 
関連する問題