| 概要
- PHPで使用する場合
- 変数とは
- まとめ
| PHPで使用する場合
PHPの学習を進めていると、文字列として文字を扱う時に'シングルクオーテーション'または"ダブルクォーテーション"を使うのを知ったが果たして違いはあるのか、またどっちがいいのか?など気になったので色々サイトをみて調べてみました。
変数とは
以下の文書の中で変数と言う言葉がよくでてくるので、まず最初に変数について紹介させていただきます。
プログラムを書くときに、長い文字列や、同じ数値・計算式を何度も繰り返し使うこともあります。
その都度同じ文字列や数値をソースコード内に記述していくのは誤記しやすいですし、手間なのでその際に変数を使用します。
変数 = データを保存しておく箱のイメージがいいと思います。
PHPにおいて変数名(箱)の名前を付ける際には、以下のルールに沿って変数名をつけます。
- 必ず【$】から始まる
- 使えるのは半角英数字、_(アンダースコア)
- 大文字小文字は区別される
- 【$】のあとに数字は使えない($name123 ○、$123name ×)
(例)
//↓箱の名前をnameにして
$name = 'yamada';
//↑箱の中身に'yamada'をいれてあげる
echo "$name";
//変数名の$nameを指定して実行すると中の'yamada'が画面に表示されます。
参考URL: https://www.sejuku.net/blog/28773
参考URL: https://www.php.net/manual/ja/language.variables.basics.php
① 'シングルクォート'では変数を使用しても変数が展開されず文字列となります。
→ つくっておいた変数を'シングルクォート'内で呼びだすと変数は展開されず文字列として出力されます。ですので、変数を出力する必要がある場合は"ダブルクォート"を使用する必要があります。
(例)
$name = 'yamada';
echo "$name";
//画面には変数の中身のyamadaが出力されます。
echo '$name';
//画面には変数の中身ではなく、文字列で$nameとそのまま表示されます。
参考URL: https://eng-entrance.com/php-basic-echo
② 'シングルクォート'でも"ダブルクォート"でも文字列として入力を行えない特殊な文字があります。
→ 【エスケープシーケンス】とはキーボードから文字列として入力できない、改行やタブなどの 特殊な文字 のことを言います。
上記の表にある記号の記述方法は【 \ 】または【 ¥ 】の後に 文字 や 記号 を記述しています。【 \ 】または【 ¥ 】の後に 文字 や 記号 を記述します。
この【 \ 】または【 ¥ 】のことを エスケープ記号 と呼び、【 \ + 文字】または【 ¥ + 文字】のことを 特殊文字 と呼びます。※ちなみに【 \ 】と【 ¥ 】は文字コードの関係で変化しますので、記述する際はどちらでも構わないとのことです。
またエスケープシーケンスを出力したい場合、特殊文字を置き換えて欲しいので、"ダブルクォート"で囲む必要があります。
まとめ
【 ‘ ‘ 】'シングルクォート'は文字として出力するときに使用します。
【 ” ” 】"ダブルクォート"は【変数】や【エスケープシーケンス】を展開するときに使用します。
参考URL: https://www.php.net/manual/ja/language.types.string.php#language.types.string.syntax.single