0
したがって、htmlentities()
を使用してPHPで文字列をエスケープしようとしています。
問題は、htmlentitiesが空の文字列を返すことです。
htmlentities()はUTF-8にもかかわらず空の値を返します
私はこの文字列をhtmlの<form>
で受け取りました。 formタグを含むページには、以下のメタタグがあります<meta charset="utf-8">
私の文字列がUTF-8でエンコードされ、htmlentites()
3番目のパラメータは'UTF-8'
であると私はまだ空の文字列を取得します。ここで
は私のコードです:それはから来るどこ
// Original string is é-è
// Expected output is é-è
string '�-�' (length=5) // Original string but why is the length 5 ?
string 'UTF-8' (length=5)
string '' (length=0)
string '' (length=0)
string 'ã©-ã¨' (length=28) // WTF ??
誰もが知っている:
$str = strtolower(trim($str));
var_dump($str, mb_detect_encoding($str), htmlentities($str), htmlentities($str, ENT_COMPAT, 'UTF-8'), htmlentities($str, ENT_COMPAT, 'ISO-8859-1'));
そして、ここでは表示さのvar_dump何ですか?
に変換しますか?自分でこの質問を投稿しましたか? –
@SaadSuri投稿する(または怒ってしまう)前に答えを見つけ、回答を投稿することに決めました。多分それは誰かを助けるでしょう。 –