PHP、文字列への変数展開

変数の場合

$var = "hoge";

echo("${var}です"); // -> hogeです
echo("{$var}です"); // -> hogeです
echo("{ $var}です"); // -> うまく動作しない

” <- シングルクオテーション中では変数展開されないので注意

配列の場合

$var = array(
    "key1" => "hoge",
    "key2" => "huga" 
);

echo("{$var[key1]}です"); // -> hogeです
echo("{$var['key1']}です"); // -> hogeです

配列な場合はキーをクオテーションで囲んで指定しなくてもいいです。

オブジェクトの場合

<?php

class fuga {
    var $foo = "hoge";
}

$fuga = new fuga();

echo("{$fuga->foo}です"); // hogeです
echo("{$fuga->$foo}です"); // 公式ページにはなぜかこれが書いてあるがこれではうまく動作しない