2017-08-03 10 views
0

私は、画面に表示されたときに記号を表示するphp文字列を持っています。 $ strの希少文字出力phpをエスケープ

N�ME 

私は

htmlentities($str, ENT_QUOTES,"UTF-8") 

を試してみましたが、完全に文字列から文字列を削除しています。私も試してみました

htmlspecialchars($str, ENT_QUOTES,"UTF-8") 

そしてまだ出力から文字列を完全に削除します。

+0

文字が何であるの?仕事 – hardworker

+1

盲目的に取り除かないでください。代わりに、それがどんな文字であるかを調べてみてください(16進ダンプを印刷すると役立ちます)。私はUTF-8ではないと思います。 –

+0

[置換文字](https://en.wikipedia.org/wiki/Specials_(Unicode_block)#Replacement_character)は、文字の解析中にエラーが発生したことを示します。それを削除することは 'htmlspecialchars'が行うのが妥当なことです。ソースでエラーを修正する必要があります。 – Quentin

答えて

0

より良い結果のために

regex()を試してみて、それが

echo preg_replace('/[^A-Za-z0-9\-]/', '', $str); 
関連する問題