HTMLエンティティを文字に変換します:
<?php
$str = '<a href="https://www.w3schools.com">w3schools.com</a>';
echo html_entity_decode($str);
?>
上のコードのHTML出力は次の通り(ソース表示):
<a href="https://www.w3schools.com">Go to w3schools.com</a>
ブラウザへの上のコードの出力は、次の通り:
html_entity_decode() 関数は、HTMLエンティティを文字に変換します。
html_entity_decode() 関数は、htmlentities()の逆です。
html_entity_decode(string,flags,character-set)
パラメータ | 説明 |
---|---|
string | 必須。デコードする文字列を指定する |
flags | 任意。クォートのの処理方法と使用する文書タイプを指定する。 使用可能なクォートスタイルは次の通り:
使用する文書タイプを指定する追加のフラグ:
|
character-set | 任意。使用する文字セットを指定する文字列。 使用可能な値:
注: 認識できない文字セットは無視され、PHP 5.4より前のバージョンではISO-8859-1に置き換えられます。 PHP 5.4以降は無視され、UTF-8に置き換えられます。 |
返り値: | 変換した文字列を返します |
---|---|
PHP バージョン: | 4.3.0+ |
変更歴 | character-set パラメータのデフォルト値は、PHP 5でUTF-8に変更されました テーブルがどの文書型かを指定するための追加のフラグ;ENT_HTML401、ENT_HTML5、ENT_XML1、ENT_XHTMLが PHP 5.4 で追加されました PHP 5.0でマルチバイトエンコーディングのサポートが追加されました |
HTMLエンティティを文字に変換します:
<?php
$str = "Albert Einstein said: 'E=MC²'";
echo
html_entity_decode($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // Converts double
and single quotes
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // Does not
convert any quotes
?>
上のコードのHTML出力は次の通り(ソース表示):
Albert Einstein said: 'E=MC²'<br>
Albert Einstein said: 'E=MC²'<br>
Albert Einstein said: 'E=MC²'
ブラウザへの上のコードの出力は、次の通り:
Albert Einstein said: 'E=MC²'
Albert Einstein said: 'E=MC²'
Albert
Einstein said: 'E=MC²'
西欧文字セットを使用して、HTMLエンティティを文字に変換します:
<?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo html_entity_decode($str, ENT_QUOTES, "UTF-8");
?>
上のコードのHTML出力は次の通り(ソース表示):
My name is Øyvind Åsane. I'm Norwegian.
ブラウザへの上のコードの出力は、次の通り:
My name is Øyvind Åsane. I'm Norwegian.