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>を行う。
Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Články píše Jan Barášek © 2009-2025 | Kontakt | Mapa webu
Status | Aktualizováno: ... | ja