compact-配列関数:変数から配列を作成

compact関数は変数名とその変数の値を使用して配列を作成する関数です。
以下にcompact関数の使用例を示します。
//compact ("変数名", "変数名",...);

$pc1 = 80000;
$pc2 = 90000;
$ar = compact("pc1", "pc2");
print_r($ar);
上の使用例では引数に"pc1","pc2"を指定しています。指定された引数を変数名として、その名前の変数を検索し、 変数が存在する場合は変数の名前をキーとし、変数の値をそのキーに対応する値とします。 よって、 Array ( [pc1] => 80000 [pc2] => 90000 ) という配列が返されます。

引数に配列を指定:compact関数

引数には配列を指定することも可能です。配列を指定した場合は、指定した配列の各値を変数名として変数の検索が行われます。 以下の場合、配列$ar1は"dell" "hp"という値を有しています。よって、変数$dellと変数$hpが存在するかどうか検索されます。
compact関数のよって作成された配列は以下の通りです。
 Array ( [pc1] => 80000 [pc2] => 90000 [dell] => pc1 [hp] => pc2 ) 
$ar1 = array("dell", "hp");
$dell = "pc1";
$hp = "pc2";
$pc1 = 80000;
$pc2 = 90000;
$ar = compact("pc1", "pc2", $ar1);
print_r($ar);