[PHP]get_html_translation_tableの使い方

2021年11月3日

構文

get_html_translation_table(int $table = HTML_SPECIALCHARS, 
int $flags = ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, 
string $encoding = "UTF-8"): array

役割
get_html_translation_table() は、 htmlspecialchars() および htmlentities()
において内部的に使用される変換テーブルを返します。

定数名	         説明
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 用のテーブル。

使用例

<?php
echo('<pre>');
var_dump(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES));
echo('</pre>');
?>

実行結果

array(253) {
  '"' =>
  string(6) "&quot;"
  '&' =>
  string(5) "&amp;"
  '\'' =>
  string(6) "&#039;"
  '<' =>
  string(4) "&lt;"
  '>' =>
  string(4) "&gt;"
  ' ' =>
  string(6) "&nbsp;"
  略

 

PHP

Posted by arkgame