【PHP】変数とその値から配列を作成する。

変数名をキーに、その値をバリューとして配列を生成する方法。

早い話がextract()の間逆の動作をさせたい場合。

// 以下のような変数があったとする
$param1 = 'hoge';
$param2 = 'piyo';
$param3 = 'fuga';

// compact()には配列形式にまとめた変数名リストで渡すこともできる
$multi = array('param2', 'param3');

// 変数名を指定してやることで配列キーとバリューに突っ込んでくれる
$array = compact('param1', $multi);

var_dump($array);
↓
array(3) {
  ["param1"]=>
  string(4) "hoge"
  ["param2"]=>
  string(4) "piyo"
  ["param3"]=>
  string(4) "fuga"
}

extract()と同様、スマートな記述にはもってこいである。