【PHP入門】compact()関数の使い方をわかりやすく解説
PHPのcompact()関数は、変数名とその値から配列を作成するための便利な関数です。指定した変数名をキーとして、変数の値が格納された配列を返します。
compact()関数とは
compact()関数を使うと、現在のスコープ内に存在する複数の変数を、1つの連想配列にまとめることができます。キーには変数名(文字列)が、値にはその変数に格納されている値がそれぞれ設定されます。
構文
compact(variable1, variable2)
パラメータ
variable1 − 変数名を表す文字列、または変数名を格納した配列を指定します。必須の引数です。
variable2 − 変数名を表す文字列、または変数名を格納した配列を指定します。省略可能な引数です。カンマ区切りで複数指定できます。
戻り値
compact()関数は、追加されたすべての変数とその値を含む配列を返します。なお、指定した変数が存在しない場合、その変数は単にスキップされ、エラーにはなりません。
使用例1:文字列で変数名を指定する
以下は、変数名を直接文字列で指定する基本的な例です。
<?php
$ELE = "Electronics";
$ACC = "Accessories";
$res = compact("ELE", "ACC");
print_r($res);
?>出力結果
Array
(
[ELE] => Electronics
[ACC] => Accessories
)この例では、「ELE」と「ACC」という2つの変数が、それぞれキーと値のペアとして配列に格納されています。
使用例2:配列で変数名を指定する
次に、変数名を配列にまとめて渡す例を見てみましょう。
<?php
$name = "Tom";
$subject = "Hanks";
$id = "001";
$details = array("name", "subject");
$res = compact($details, "id");
print_r($res);
?>出力結果
Array
(
[name] => Tom
[subject] => Hanks
[id] => 001
)このように、変数名を格納した配列「$details」を渡しても、正しく各変数が配列に展開されます。また、配列と文字列を混在させて引数に指定することも可能です。
まとめ
compact()関数は、テンプレートエンジンへのデータ受け渡しや、ビューへの変数の引き渡しなどでよく活用される関数です。複数の変数を手軽に1つの配列にまとめられるため、コードをすっきりと整理したい場面でぜひ活用してみてください。
-
【PHP入門】compact()関数の使い方をわかりやすく解説
PHPのcompact()関数は、変数名とその値から配列を作成するための便利な関数です。指定した変数名をキーとして、変数の値が格納された配列を返します。compact()関数とはcompact()関数を使うと、現在のスコープ内に存在する複数の変数を、1つの連想配列にまとめることができます。キーには変数名(文字列)が、値にはその変数に格納されている値がそれぞれ設定されます。構文compact(variable1, variable2)パラメータvariable1 − 変数名を表す文字列、または変数名を格納した配列を指定します。必須の引数です。variable2 − 変数名を表す文字列、または変数
-
PHPのarray()関数とは?配列の作成方法をわかりやすく解説
PHPのarray()関数は、配列を作成するための関数です。PHPにおける配列には、主に以下の3種類が存在します。インデックス配列 − 数値インデックス(0から始まる番号)で要素を管理する配列連想配列 − 文字列などの名前付きキーで要素を管理する配列多次元配列 − 配列の中に1つ以上の配列を含む、入れ子構造の配列構文// 数値インデックスを持つ配列(インデックス配列) array(value1, value2, ...); // 名前付きキーを持つ配列(連想配列) array(key1 => value1, key2 => value2, ...)パラメータvalue − 配列に