はじめに
今回は、変数を文字列内で展開することができる変数展開の使い方について投稿します。
使い方
使い方は下記になります。
\$(ドルマーク)の前に{
をつけるパターンと、\$の後ろに{
をつけるパターンがあります。
結果はどちらも一緒なので好きな方を使ってください。
ただし、文字列は、ダブルクォーテーション("") または シングルクォーテーション('')で囲んでいると思います。
変数を文字列内で展開する際は、ダブルクォーテーションで囲ってください!
"文字列〜 ${変数} 〜 文字列"
or
"文字列〜 {$変数} 〜 文字列"
使用例
配列$examの値を文字列内で展開するケースを例に説明します。
下記のコードの場合、エラーになります。
理由は、\$examのキーであるmathの前についているシングルクオーテーション( ’ )によって、
$examの前にある「”」の終わりを表すクオーテーションと認識されるからです。
// エラーケース
$exam = ['math' => '90'];
echo "数学の点数:" . "$exam['math']";
// 出力結果はエラーになる
これを解決するために{ }
で変数$exam[’math’]
を囲みます。
それによりカッコで囲まれた個所が変数と認識されるためです。
// OKパターン
$exam = ['math' => '90'];
echo "数学の点数:" . "{$exam['math']}"; // または、"${exam['math']}"
// 結果は、「数学の点数:90」となる
最後に
今回は 変数展開について説明しました。
普段変数を文字列内で使用する場合は、ダブルクォーテーションを使っていると思います。
複雑なケースでは変数展開 {$変数}
を使用する場合が出てくると思うので
頭の片隅に入れておいてもらえればと思います。
参考サイト