PHP Manual
/
基礎知識

PHP での文字列のエスケープ

26. 11. 2019

エスケープとは、異なる文脈で異なる意味を持つ文字を書くために使われる。

例えば、引用符で囲まれた文字列の中に別の引用符を挿入したい。どうすればいいのか?

2つのオプションがあります。

echo "リーバイス・ジーンズ"; // 引用符の種類の組み合わせ
echo 'レヴィのジーンズ'; // バックスラッシュのエスケープ

また、HTMLテンプレートに変数を書き込む場合、文字列の内容が異なる文脈で、何か特別な意味を持つ可能性があるため、エスケープは重要である。

したがって、例えば(変数に入れた)HTMLコードをリストアップする場合、リストアップの処理をしないとHTMLコードが実行されてしまいます。

例えば、こんな感じです。

$message = 'こんにちは<b>トミー!</b>。';
echo $message; // 間違っている
echo htmlspecialchars($message); // そうですね)

エスケープの問題は非常に複雑なので、David Grudel氏の記事Escaping - The Definitive Guide を読むことをお勧めします。

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:

Související články

1.
9.
Status:
All systems normal.
2024