html_entity_decode HTML エンティティを適切な文字に変換する &reftitle.description; stringhtml_entity_decode stringstring intflagsENT_COMPAT | ENT_HTML401 stringencoding'UTF-8' html_entity_decodehtmlentities の反対で、string にあるすべての HTML エンティティを適切な文字に変換します。 厳密に言うと、この関数は次の二つの条件を満たすすべての (数値エンティティを含む) エンティティをデコードします。それ以外のエンティティは、何も変換しません。 1) 選択したドキュメントタイプで必然的に有効になるもの。つまり XML の場合には、DTD で定義されている名前付きエンティティはデコードしません。 2) 選択したエンコーディングに関連づけられている符号化文字集合に含まれる文字で、 選択したドキュメントタイプで許可されているもの。 &reftitle.parameters; string 入力文字列。 flags 以下のフラグのビットマスクによる組み合わせで、クォートの扱いやドキュメントの形式を指定します。 デフォルトは ENT_COMPAT | ENT_HTML401 です。 使用可能な <parameter>flags</parameter> 定数 定数名 説明 ENT_COMPAT ダブルクォートを変換し、シングルクォートはそのままにします。 ENT_QUOTES ダブルクォート、シングルクォートの両方を変換します。 ENT_NOQUOTES ダブルクォート、シングルクォートの両方とも変換しません。 ENT_HTML401 コードを HTML 4.01 として処理します。 ENT_XML1 コードを XML 1 として処理します。 ENT_XHTML コードを XHTML として処理します。 ENT_HTML5 コードを HTML 5 として処理します。
encoding 使用するエンコーディング。省略した場合のデフォルト値は、 PHP 5.4.0 より前のバージョンでは ISO-8859-1、そして PHP 5.4.0 以降では UTF-8 となります。 &reference.strings.charsets;
&reftitle.returnvalues; デコードされた文字列を返します。 &reftitle.changelog; &Version; &Description; 5.3.3 デフォルトのエンコーディングが ISO-8859-1 から UTF-8 に変わりました。 5.4.0 定数 ENT_HTML401ENT_XML1ENT_XHTML および ENT_HTML5 が追加されました。 5.0.0 マルチバイトエンコーディングをサポートするようになりました。 &reftitle.examples; HTML エンティティのデコード dog now"; $a = htmlentities($orig); $b = html_entity_decode($a); echo $a; // I'll "walk" the <b>dog</b> now echo $b; // I'll "walk" the dog now ?> ]]> &reftitle.notes; trim(html_entity_decode('&nbsp;')); の結果が空の文字列に ならないことを疑問に思う人もいるでしょう。なぜそうなるのかというと、 デフォルトのエンコーディング ISO-8859-1 では '&nbsp;' エンティティが ASCII コード 32 (これは trim で取り除かれる) ではなく ASCII コード 160 (0xa0) に変換されるからです。 &reftitle.seealso; htmlentities htmlspecialchars get_html_translation_table urldecode