関数の概要
array_fill_keys は、指定したキーの配列に対して、すべて同じ値を持つ新しい連想配列を作成するPHPの組み込み関数です。複数のキーに対して同じ初期値を設定したい場合に便利で、配列の初期化やデフォルト値設定によく使われます。
パラメータの説明
array $keys: キーとして使用する値を含む配列を指定します。文字列や整数が使えます。mixed $value: すべてのキーに割り当てる値を指定します。任意の型を渡せます。
戻り値
指定されたキーすべてに同じ値を持つ新しい連想配列を返します。入力のキー配列に含まれる要素がすべてキーとなり、値は $value で指定した値になります。
使用例を複数
基本的な使い方
$keys = ['apple', 'banana', 'cherry'];
$result = array_fill_keys($keys, 0);
print_r($result);
この例では、キーが『apple』『banana』『cherry』の3つで、それぞれの値が0の配列が作成されます。
文字列を値に設定する例
$keys = ['name', 'email', 'age'];
$default = '未登録';
$user_data = array_fill_keys($keys, $default);
print_r($user_data);
ここでは、ユーザー情報に使うキーに対してすべて「未登録」という文字列を初期値として設定しています。フォームの初期化などに便利です。
空配列に対する動作
$empty_keys = [];
$result = array_fill_keys($empty_keys, 'value');
var_dump($result);
空のキー配列を指定すると、結果の配列も空になります。エラーにはならず安全に使えます。
関連する関数
array_fill:数値インデックスで同じ値を連続して埋めるarray_keys:配列のキーを取得するarray_map:配列の各要素にコールバック関数を適用
まとめ
array_fill_keys は、複数のキーに同じ値を一括で設定できる便利な関数です。配列の初期化や設定のデフォルト値作成に役立ちます。シンプルな使い方ながら、配列操作を効率的に行うための基本ツールのひとつとして覚えておくと良いでしょう。
