htmlspecialchars_decode
特殊な HTML エンティティを文字に戻す
説明
string htmlspecialchars_decode(string $string
, int $flags
= ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401)
変換されるエンティティは次のものです。&
、
"
(ENT_NOQUOTES
が設定されていない場合)、
'
(ENT_QUOTES
が設定されている場合)、
<
および >
。
パラメータ
-
string
-
デコードする文字列。
-
flags
-
以下のフラグのビットマスクによる組み合わせで、クォートの扱いやドキュメントの形式を指定します。
デフォルトは ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401
です。
使用可能な flags
定数
定数名 |
説明 |
ENT_COMPAT |
ダブルクォートを変換し、シングルクォートはそのままにします。 |
ENT_QUOTES |
ダブルクォート、シングルクォートの両方を変換します。 |
ENT_NOQUOTES |
ダブルクォート、シングルクォートの両方をそのままにします。 |
ENT_SUBSTITUTE |
無効な符号単位シーケンスを含む文字列を渡したときに、
空の文字列を返すのではなく Unicode の置換文字に置き換えます。
UTF-8 の場合は U+FFFD、それ以外の場合は &#FFFD; となります。
|
ENT_HTML401 |
コードを HTML 4.01 として処理します。
|
ENT_XML1 |
コードを XML 1 として処理します。
|
ENT_XHTML |
コードを XHTML として処理します。
|
ENT_HTML5 |
コードを HTML 5 として処理します。
|
例
例1 htmlspecialchars_decode の例
<?php
$str = "<p>this -> "</p>\n";
echo htmlspecialchars_decode($str);
// クォートが変換されないことに注意しましょう
echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>
<p>this -> "</p>
<p>this -> "</p>
参考
- htmlspecialchars
- html_entity_decode
- get_html_translation_table