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( "'", """, "<", ">", "&" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
$varArray = array( "'", """, "<", ">", "&" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
↓↓↓出力結果↓↓↓
': '
": "
<: <
>: >
&: &
": "
<: <
>: >
&: &
ISO-8859-1の記号を、文字実体参照からデコード
<?php
$varArray = array( " ", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬",
"­", "®", "¯", "°", "±", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "»",
"¼", "½", "¾", "¿", "×", "÷" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
$varArray = array( " ", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬",
"­", "®", "¯", "°", "±", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "»",
"¼", "½", "¾", "¿", "×", "÷" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
↓↓↓出力結果↓↓↓
:
¡: ¡
¢: ¢
£: £
¤: ¤
¥: ¥
¦: ¦
§: §
¨: ¨
©: ©
ª: ª
«: «
¬: ¬
­:
®: ®
¯: ¯
°: °
±: ±
²: ²
³: ³
´: ´
µ: µ
¶: ¶
·: ·
¸: ¸
¹: ¹
º: º
»: »
¼: ¼
½: ½
¾: ¾
¿: ¿
×: ×
÷: ÷
¡: ¡
¢: ¢
£: £
¤: ¤
¥: ¥
¦: ¦
§: §
¨: ¨
©: ©
ª: ª
«: «
¬: ¬
­:
®: ®
¯: ¯
°: °
±: ±
²: ²
³: ³
´: ´
µ: µ
¶: ¶
·: ·
¸: ¸
¹: ¹
º: º
»: »
¼: ¼
½: ½
¾: ¾
¿: ¿
×: ×
÷: ÷
ISO-8859-1の文字を、文字実体参照からデコード
<?php
$varArray = array( "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë",
"Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "Ù",
"Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç",
"è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ",
"ö", "ø", "ù", "ú", "û", "ü", "ý", "þ", "ÿ" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
$varArray = array( "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë",
"Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "Ù",
"Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç",
"è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ",
"ö", "ø", "ù", "ú", "û", "ü", "ý", "þ", "ÿ" );
foreach( $varArray as $varStr ){
echo "{$varStr}: ";
echo html_entity_decode( $varStr, ENT_QUOTES, "UTF-8" );
echo "\n";
}
?>
↓↓↓出力結果↓↓↓
À: À
Á: Á
Â: Â
Ã: Ã
Ä: Ä
Å: Å
Æ: Æ
Ç: Ç
È: È
É: É
Ê: Ê
Ë: Ë
Ì: Ì
Í: Í
Î: Î
Ï: Ï
Ð: Ð
Ñ: Ñ
Ò: Ò
Ó: Ó
Ô: Ô
Õ: Õ
Ö: Ö
Ø: Ø
Ù: Ù
Ú: Ú
Û: Û
Ü: Ü
Ý: Ý
Þ: Þ
ß: ß
à: à
á: á
â: â
ã: ã
ä: ä
å: å
æ: æ
ç: ç
è: è
é: é
ê: ê
ë: ë
ì: ì
í: í
î: î
ï: ï
ð: ð
ñ: ñ
ò: ò
ó: ó
ô: ô
õ: õ
ö: ö
ø: ø
ù: ù
ú: ú
û: û
ü: ü
ý: ý
þ: þ
ÿ: ÿ
Á: Á
Â: Â
Ã: Ã
Ä: Ä
Å: Å
Æ: Æ
Ç: Ç
È: È
É: É
Ê: Ê
Ë: Ë
Ì: Ì
Í: Í
Î: Î
Ï: Ï
Ð: Ð
Ñ: Ñ
Ò: Ò
Ó: Ó
Ô: Ô
Õ: Õ
Ö: Ö
Ø: Ø
Ù: Ù
Ú: Ú
Û: Û
Ü: Ü
Ý: Ý
Þ: Þ
ß: ß
à: à
á: á
â: â
ã: ã
ä: ä
å: å
æ: æ
ç: ç
è: è
é: é
ê: ê
ë: ë
ì: ì
í: í
î: î
ï: ï
ð: ð
ñ: ñ
ò: ò
ó: ó
ô: ô
õ: õ
ö: ö
ø: ø
ù: ù
ú: ú
û: û
ü: ü
ý: ý
þ: þ
ÿ: ÿ