シングルクォーテーション、ダブルクォーテーションの違い

シングルクォーテーション、ダブルクォーテーションには機能に違いがあります。

まず、2つのコードを見てみましょう。

パット見何も変わらないコードですが、これでは出力結果が違います。

サンプルがあるのでサンプルを見てみましょう。

出力のサンプルコードはこちら

まず、上のコードでは「$text.World」と出力されます。
しかし、下のコードでは「HelloWorld」と出力されます。

 

なぜ?

ではなぜ出力結果に上記のような違いが起こったのでしょうか?

重要なポイントは文字列を出力している部分のコードです。

上のコードは「echo ‘$textWorld’;」

したのコードでは「echo “$textWorld”;」となっています。

echo の後にくる文字列をかこっているのが「”」か「’」の違いです。

「”」はダブルクォーテーションといい、文字列内の変数を展開してから出力されます。

「’」はシングルクォーテーションといい、文字列内の変数を展開せずに出力します。

そのため出力結果に違いが起きてしまったのです。

まとめ

文字列を出力するとき、

ダブルクォーテーションは、文字列内の変数を展開してから出力されます。

シングルクォーテーションは、文字列内の変数を展開せずに出力します。

この違いに気を付けて使い分けましょう。

ちなみに、

出力する文字列が

のようになる場合

このように表記すると見やすくなります。
出力内容は変わりません。
シングルクォーテーション、ダブルクォーテーションの違いがわかったでしょうか?
皆さんも使い分けて使ってみてください。