html_entity_decode( string $string[, int $flags[, string $encoding]] )

html_entity_decode( string $string[, int $flags[, string $encoding]] )は、文字列「$string」の中のHTMLエンティティ (文字実体参照や数値文字参照) を、変換(デコード)する組み込み関数。

エンコードには、htmlentities( string $string[, int $flags[, string $encoding[, bool $double_encode]]] )を使う。

定義

文字列型 html_entity_decode( 文字列型 $string[, 数値型 $flags[, 文字列型 $encoding]] );

パラメータ

文字列型 $string

HTMLエンティティ (文字実体参照や数値文字参照) を、変換(デコード)したい文字列を指定する。

数値型 $flags

クォートやコードなどの取り扱い方法。

  • ENT_COMPAT: ダブルクオートは変換する。シングルクオートは変換しない。
  • ENT_QUOTES: ダブルクオートも、シングルクオートも、変換する。
  • ENT_NOQUOTES: ダブルクオートも、シングルクオートも、変換しない。
  • ENT_HTML401: 「HTML 4.01」として、コードを処理。
  • ENT_XML1: 「XML 1」として、コードを処理。
  • ENT_XHTML: 「XHTML」として、コードを処理。
  • ENT_HTML5: 「HTML 5」として、コードを処理。
文字列型 $encoding

変換に使用する文字セットを指定する。

サポートしている文字セット。

  • ISO-8859-1
  • ISO-8859-5
  • ISO-8859-15
  • UTF-8
  • cp866
  • cp1251
  • cp1252
  • KOI8-R
  • BIG5
  • GB2312
  • BIG5-HKSCS
  • Shift_JIS
  • EUC-JP
  • MacRoman

「PHP 5.4.0」以降の初期設定値は、「UTF-8」。

「PHP 5.4.0」より前の初期設定値は、「ISO-8859-1」。

戻り値

文字列「文字列型 $string」を、文字セット「$encoding」に基づき、HTMLエンティティ (文字実体参照や数値文字参照) からデコードした文字列。

構文

文字実体参照からデコード

デコード後文字列 = html_entity_decode( 文字列, 取り扱い方法, 文字セット );

「文字列」を、「文字セット」に基づき、HTMLエンティティ (文字実体参照や数値文字参照) からデコードし、「デコード後文字列」を返す。

サンプル

HTMLの予約語を、文字実体参照からデコード

<?php
$varArray = array( "&#039;", "&quot;", "&lt;", "&gt;", "&amp;" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
    echo "\n";
}
?>

↓↓↓出力結果↓↓↓

&#039;: '
&quot;: "
&lt;: <
&gt;: >
&amp;: &

ISO-8859-1の記号を、文字実体参照からデコード

<?php
$varArray = array( "&nbsp;", "&iexcl;", "&cent;", "&pound;", "&curren;", "&yen;", "&brvbar;", "&sect;", "&uml;", "&copy;", "&ordf;", "&laquo;", "&not;",
"&shy;", "&reg;", "&macr;", "&deg;", "&plusmn;", "&sup2;", "&sup3;", "&acute;", "&micro;", "&para;", "&middot;", "&cedil;", "&sup1;", "&ordm;", "&raquo;",
"&frac14;", "&frac12;", "&frac34;", "&iquest;", "&times;", "&divide;" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
    echo "\n";
}
?>

↓↓↓出力結果↓↓↓

&nbsp;:  
&iexcl;: ¡
&cent;: ¢
&pound;: £
&curren;: ¤
&yen;: ¥
&brvbar;: ¦
&sect;: §
&uml;: ¨
&copy;: ©
&ordf;: ª
&laquo;: «
&not;: ¬
&shy;: ­
&reg;: ®
&macr;: ¯
&deg;: °
&plusmn;: ±
&sup2;: ²
&sup3;: ³
&acute;: ´
&micro;: µ
&para;: ¶
&middot;: ·
&cedil;: ¸
&sup1;: ¹
&ordm;: º
&raquo;: »
&frac14;: ¼
&frac12;: ½
&frac34;: ¾
&iquest;: ¿
&times;: ×
&divide;: ÷

ISO-8859-1の文字を、文字実体参照からデコード

<?php
$varArray = array( "&Agrave;", "&Aacute;", "&Acirc;", "&Atilde;", "&Auml;", "&Aring;", "&AElig;", "&Ccedil;", "&Egrave;", "&Eacute;", "&Ecirc;", "&Euml;",
"&Igrave;", "&Iacute;", "&Icirc;", "&Iuml;", "&ETH;", "&Ntilde;", "&Ograve;", "&Oacute;", "&Ocirc;", "&Otilde;", "&Ouml;", "&Oslash;", "&Ugrave;",
"&Uacute;", "&Ucirc;", "&Uuml;", "&Yacute;", "&THORN;", "&szlig;", "&agrave;", "&aacute;", "&acirc;", "&atilde;", "&auml;", "&aring;", "&aelig;", "&ccedil;",
"&egrave;", "&eacute;", "&ecirc;", "&euml;", "&igrave;", "&iacute;", "&icirc;", "&iuml;", "&eth;", "&ntilde;", "&ograve;", "&oacute;", "&ocirc;", "&otilde;",
"&ouml;", "&oslash;", "&ugrave;", "&uacute;", "&ucirc;", "&uuml;", "&yacute;", "&thorn;", "&yuml;" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
    echo "\n";
}
?>

↓↓↓出力結果↓↓↓

&Agrave;: À
&Aacute;: Á
&Acirc;: Â
&Atilde;: Ã
&Auml;: Ä
&Aring;: Å
&AElig;: Æ
&Ccedil;: Ç
&Egrave;: È
&Eacute;: É
&Ecirc;: Ê
&Euml;: Ë
&Igrave;: Ì
&Iacute;: Í
&Icirc;: Î
&Iuml;: Ï
&ETH;: Ð
&Ntilde;: Ñ
&Ograve;: Ò
&Oacute;: Ó
&Ocirc;: Ô
&Otilde;: Õ
&Ouml;: Ö
&Oslash;: Ø
&Ugrave;: Ù
&Uacute;: Ú
&Ucirc;: Û
&Uuml;: Ü
&Yacute;: Ý
&THORN;: Þ
&szlig;: ß
&agrave;: à
&aacute;: á
&acirc;: â
&atilde;: ã
&auml;: ä
&aring;: å
&aelig;: æ
&ccedil;: ç
&egrave;: è
&eacute;: é
&ecirc;: ê
&euml;: ë
&igrave;: ì
&iacute;: í
&icirc;: î
&iuml;: ï
&eth;: ð
&ntilde;: ñ
&ograve;: ò
&oacute;: ó
&ocirc;: ô
&otilde;: õ
&ouml;: ö
&oslash;: ø
&ugrave;: ù
&uacute;: ú
&ucirc;: û
&uuml;: ü
&yacute;: ý
&thorn;: þ
&yuml;: ÿ

スポンサード リンク

カテゴリー: HTML, PHP, 文字列, 組み込み関数 タグ: , パーマリンク