htmlentities( string $string[, int $flags[, string $encoding[, bool $double_encode]]] )

htmlentities( string $string[, int $flags[, string $encoding[, bool $double_encode]]] )は、文字列「$string」を、文字セット「$encoding」に基づき、HTMLエンティティ(文字実体参照)に変換(エンコード)する組み込み関数。'は、数値文字参照に変換する。

デコード には、html_entity_decode( string $string[, int $flags[, string $encoding]] )を使う。

定義

文字列型 htmlentities( 文字列型 $string[, 数値型 $flags[, 文字列型 $encoding[, 論理型 $double_encode]]] );

パラメータ

文字列型 $string

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

数値型 $flags

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

  • ENT_COMPAT: ダブルクオートは変換する。シングルクオートは変換しない。
  • ENT_QUOTES: ダブルクオートも、シングルクオートも、変換する。
  • ENT_NOQUOTES: ダブルクオートも、シングルクオートも、変換しない。
  • ENT_IGNORE:
  • ENT_SUBSTITUTE:
  • ENT_DISALLOWED:
  • 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」。

論理型 $double_encode

オプション。

既存のHTMLエンティティ(文字実体参照)を、エンコード するかどうか。

「true」を指定すると、既存のHTMLエンティティ(文字実体参照)も、エンコード する。

「false」を指定すると、既存のHTMLエンティティ(文字実体参照)は、エンコード しない。

初期設定値は、「true」。

戻り値

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

構文

文字実体参照にエンコード (1)

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

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

文字実体参照にエンコード (2)

エンコード 後文字列 = htmlentities( 文字列, 取り扱い方法, 文字セット, false );

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

既存のHTMLエンティティ(文字実体参照)は、エンコード しない。

サンプル

HTMLの予約語を、文字実体参照にエンコード

<?php
$varArray = array( "'", '"', "<", ">", "&" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo htmlentities( $varStr, ENT_QUOTES, "UTF-8" );
    echo "\n";
}
?>

↓↓↓出力結果↓↓↓

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

ISO-8859-1の記号を、文字実体参照にエンコード

<?php
$varArray = array( " ", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬", "­", "®", "¯", "°", "±", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "»", "¼", "½", "¾", "¿", "×", "÷" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo htmlentities( $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( "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "Ù", "Ú", "Û",
"Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "ø", "ù", "ú", "û",
"ü", "ý", "þ", "ÿ" );
foreach( $varArray as $varStr ){
    echo "{$varStr}: ";
    echo htmlentities( $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, 文字列, 組み込み関数 タグ: , パーマリンク