PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

【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つの配列にまとめられるため、コードをすっきりと整理したい場面でぜひ活用してみてください。

  1. 【PHP入門】compact()関数の使い方をわかりやすく解説

    PHPのcompact()関数は、変数名とその値から配列を作成するための便利な関数です。指定した変数名をキーとして、変数の値が格納された配列を返します。compact()関数とはcompact()関数を使うと、現在のスコープ内に存在する複数の変数を、1つの連想配列にまとめることができます。キーには変数名(文字列)が、値にはその変数に格納されている値がそれぞれ設定されます。構文compact(variable1, variable2)パラメータvariable1 − 変数名を表す文字列、または変数名を格納した配列を指定します。必須の引数です。variable2 − 変数名を表す文字列、または変数

  2. PHPのarray()関数とは?配列の作成方法をわかりやすく解説

    PHPのarray()関数は、配列を作成するための関数です。PHPにおける配列には、主に以下の3種類が存在します。インデックス配列 − 数値インデックス(0から始まる番号)で要素を管理する配列連想配列 − 文字列などの名前付きキーで要素を管理する配列多次元配列 − 配列の中に1つ以上の配列を含む、入れ子構造の配列構文// 数値インデックスを持つ配列(インデックス配列) array(value1, value2, ...); // 名前付きキーを持つ配列(連想配列) array(key1 => value1, key2 => value2, ...)パラメータvalue − 配列に