現在の位置: ホーム> 最新記事一覧> array_fill_keysを使用してJSONテンプレート配列を作成します

array_fill_keysを使用してJSONテンプレート配列を作成します

M66 2025-06-06

毎日のPHP開発では、特にAPIの処理がデータまたは構成テンプレートを返す場合、固定構造JSONデータを構築する必要があることがよくあります。各キーを手動で埋めることに悩まされたことがあるなら、 array_fill_keys関数はあなたにとって良いヘルパーになります。

1。array_fill_keysとは何ですか?

array_fill_keysは、phpが提供する組み込み関数です。その機能は、指定されたキー名配列とデフォルト値を使用して、完全な連想配列を迅速に生成することです。

構文は次のとおりです。

 array_fill_keys(array $keys, mixed $value): array
  • $キー:キーとして使用する必要がある配列。

  • $値:すべてのキーに割り当てられた初期値。

この機能は、テンプレートの初期化、プレースホルダーデータ構築、その他のシナリオでの使用に非常に適しています。

2。アプリケーションシナリオ:JSONテンプレート配列の構築

フィールドID名前ステータスURLを含む標準化されたJSON応答を返す必要があるシナリオを想像してください。これらのフィールドには、初期化時にデフォルト値(null、空の文字列など)が必要です。

伝統的な執筆方法は次のようになるかもしれません:

 $template = [
    'id' => null,
    'name' => null,
    'status' => null,
    'url' => null
];

フィールドが多すぎると、この方法は反復的で面倒になります。

array_fill_keysを使用して、これを書くことができます:

 $fields = ['id', 'name', 'status', 'url'];
$template = array_fill_keys($fields, null);

これにより、 NULLのすべての値を持つ一連のテンプレートがすぐに取得され、効率と読みやすさが大幅に向上します。

3。JSONと組み合わせて使用​​します

このようなデータテンプレートのセットを出力し、JSON文字列に変換してフロントエンドに戻す必要があるとします。

 $fields = ['id', 'name', 'status', 'url'];
$template = array_fill_keys($fields, null);

// ここに私たちがデモンストレーションです,いくつかの値を入力します
$template['id'] = 101;
$template['name'] = 'テスト項目';
$template['status'] = 'active';
$template['url'] = 'https://m66.net/api/project/101';

echo json_encode($template, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

出力の結果は次のとおりです。

 {
    "id": 101,
    "name": "テスト項目",
    "status": "active",
    "url": "https://m66.net/api/project/101"
}

このようにして、JSON構造全体のテンプレートは非常に簡潔な方法で構築でき、必要に応じてフィールド値を動的に置き換えることができます。

4。高度な使用法:バッチは複数のテンプレート項目を構築します

たとえば、ページングデータをシミュレートするために、複数のデータ項目を一度に作成する必要がある場合は、ループを組み合わせて生成できます。

 $fields = ['id', 'name', 'status', 'url'];
$list = [];

for ($i = 1; $i <= 5; $i++) {
    $item = array_fill_keys($fields, null);
    $item['id'] = $i;
    $item['name'] = 'プロジェクト ' . $i;
    $item['status'] = 'active';
    $item['url'] = "https://m66.net/api/project/{$i}";

    $list[] = $item;
}

echo json_encode($list, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

出力は、それぞれ同じ構造を持つ5つのエントリを含むJSONアレイで、シミュレートされたデータまたはフロントエンドインターフェイスとして出力に最適です。

要約します

array_fill_keysは、シンプルだが非常に実用的な機能であり、特に統一された構造を持つテンプレートアレイを構築するのに適しています。単一のオブジェクトであろうと配列リストであろうと、JSONでそれを使用すると、コードの読みやすさと保守性が大幅に向上する可能性があります。

次回構造化データを初期化する必要がある場合は、この小さなツール機能を使用してPHP開発を容易にすることを検討することもできます。