【PHP】文字列のシングル(‘)・ダブル(“)クォーテーションの違い

この記事では、PHPプログラムで文字列をシングルクォーテーションとダブルクォーテーションで括った場合の違い方法とサンプルコードについて紹介します。

シングル(‘)・ダブル(“)の違い

結論から述べると、シングルクォーテーション(‘)では、変数やエスケープ文字をそのまま表示します。
一方、ダブルクォーテーション(“)は展開(中身を取り出して)表示します。

変数

変数を指定した時の挙動の違いは以下の通りです。

$var = ‘Nyan Pass’;
echo ‘$var’; // $var
echo “$var”; // Nyan Pass

シングルクォーテーション(‘)では、変数名が表示されます。
ダブルクォーテーション(“)では、変数展開されるので、格納されてる値を表示します。
実行結果です。改行(LF)を意味する特殊文字「\n」と変数「$str」は展開されずに、そのまま表示されます。

エスケープ文字

エスケープ文字(特殊文字)を指定した時の挙動の違いは以下の通りです。

echo ‘Nyan \n Pass’; // Nyan \n Pass
echo “Nyan \n Pass”; // Nyan 改行 Pass

シングルクォーテーション(‘)では、改行コードがただの文字列として扱われて表示されます。
ダブルクォーテーション(“)では、エスケープ文字(特殊文字)として扱われるので、Nyanのあとが改行されて表示されます。

HTMLタグも同様になります。

【関連記事】
【XAMPP】Apacheの使い方
PHP入門 基本文法

シェア&フォローお願いします!