Htmlspecialchars
Htmlspecialchars()は、特殊文字をHTMLエンティティに変換する関数である。
商品説明
$promenna = htmlspecialchars($text);
特殊文字の中には、ブラウザにとって特別な意味を持つものもあるため、実体に応じた変換を行う必要があります。これにより、一般的なスクリプトの安全性を確保し、ページが不正にレンダリングされるのを防ぐことができます。
フォームやユーザーがテキストを挿入する場所を保護するために最もよく使われ、HTMLタグを挿入するリスクもあります。
| キャラクター|ノート|変更点
|------|-------------------------|-----------
| アンパーサンド | &
| "|ダブルクォート(ENT_NOQUOTESが無効の場合は変化します)|" | '|アポストロフィ(ENT_QUOTESが有効な場合は変更されます)| '
|<| 以下、HTMLブラケット|<|||。 |>| 大なり小なり、HTMLブラケット|>`|。
パラメータ
**変換する文字列
フラグ 異なる動作設定
charset 文字セット(エンコーディング)を指定します。デフォルトのキャラクタセットは ISO-8859-1 です。
ISO-8859-1、ISO-8859-15、UTF-8、cp866、CP1251、CP1252、KOI8-R` を使用することができる。
注)PHP4.3.0以降のみ対応。それ以外の文字セットは認識されず、サポートされません。
double_encode double_encode が無効な場合、PHP は既存の HTML エンティティをエンコードせず、デフォルトではすべてを変換します。
戻り値
文字列を変換する。
文字列が無効な単位を含む場合、 ENT_IGNORE (設定されていない) で指定された charset の範囲内では、空の文字列が返される。
バージョンアップの推移
| バージョン|備考
|-------|---------
| 5.4.0 | 定数 ENT_SUBSTITUTE、ENT_DISALLOWED、ENT_HTML401、ENT_XML1、ENT_XHTML および ENT_HTML5 を追加しました。
| 5.3.0 | 定数 ENT_IGNORE を追加しました。
| 5.2.3 | double_encodeパラメータを追加しました。 | 4.1.0 | charset`パラメータを追加しました。
例
$new = htmlspecialchars('<a href="test">テスト</a>。',ENT_QUOTES);echo $new; // <a href="test">テスト</a>を行う。