エスケープシーケンス

php

PHPでは改行やタブなど一部記号や、クォーテーション内で同一クォーテーションなどはそのまま入力することができません。 その場合はエスケープシーケンスを利用します。PHPのエスケープシーケンスとして用意されているのは以下の通りです。

コード内容
¥n改行
¥’シングルクオーテーション
¥”ダブルクオーテーション
¥tタブ
¥rキャリッジリターン
¥¥¥文字
¥$$文字
¥(左括弧
¥)右括弧
¥[左括弧
¥]右括弧
¥nnn8 進数表記
¥xnn16 進数表記

またエスケープシーケンスはダブルクォーテーション内でのみ使えます。 シングルクォーテーション内ではそのまま記号と見なされるので気を付けましょう。

ただしシングルクォーテーション内でも、シングルクォーテーションと記号の2つはエスケープすることができます。

エスケープシーケンス使用例

エスケープ使用前

そのままではダブルクォーテーション内でダブルクォーテーションは使用できません。

サンプル1

echo "ダブルクォーテーション内で"ダブルクオーテーション"";

実行結果はエラーとなりました。どれがHTMLに出力すべきダブルクォーテーションか判断できないためです。

サンプル1出力結果

Parse error: syntax error, unexpected 'ダブルクォーテーショ' (T_STRING) in …

エスケープ使用前後

エスケープシーケンスを使うことにより、内側のダブルクォーテーションをエスケープ文字にし、HTMLソースに出力するダブルクォーテーションを明示しました。

サンプル2

echo "ダブルクォーテーション内で"ダブルクォーテーション";

きちんと”ダブルクォーテーション”を出力できました。

サンプル2結果:OK

ダブルクォーテーション内で"ダブルクォーテーション"

アマルウェブ HOME