現在の位置: ホーム> 最新記事一覧> array_keysを使用してキーを取得し、array_fill_keysでarray値をリセットします

array_keysを使用してキーを取得し、array_fill_keysでarray値をリセットします

M66 2025-06-06

PHPでは、 array_keysarray_fill_keysは、一般的に使用される2つの配列関数です。 array_keysは、配列内のすべてのキーを取得するのに役立ちますが、 array_fill_keysは指定されたキーを使用して同じ値で配列を入力できます。これらの2つの機能を組み合わせて使用​​して、非常に実用的な操作を実現できます。

array_keys関数とは何ですか?

array_keys関数は、配列内のすべてのキー名を返します。その構文は次のとおりです。

 array_keys(array $array, mixed $value = null, bool $strict = false): array
  • $配列:入力配列。

  • $ value (オプション):このパラメーターが提供されている場合、 array_keysはすべてのキーを$ valueの値で返します。

  • $ strict (オプション): trueに設定されている場合は、厳密な比較を実行します。

array_fill_keys機能とは何ですか?

array_fill_keys関数は、提供されたキー名配列に基づいて新しい配列を入力でき、すべての値は指定された値に設定されます。その構文は次のとおりです。

 array_fill_keys(array $keys, mixed $value): array
  • $キー:キー名を含む配列。

  • $値:埋めるために使用される値。

array_keysarray_fill_keysを組み合わせてArrayの値をリセットする方法は?

これら2つの機能を組み合わせることにより、最初にarray_keysを介して配列内のすべてのキー名を取得し、次にarray_fill_keysを使用してこれらのキーの値をリセットできます。

サンプルコード

複数のキー値ペアを含む配列があり、この配列内のすべてのキーの値を0などの指定された値にリセットする必要があるとします。

 <?php

// オリジナル配列
$array = [
    'apple' => 10,
    'banana' => 20,
    'cherry' => 30,
];

// 使用 array_keys すべてのキー名を取得します
$keys = array_keys($array);

// 使用 array_fill_keys 値をリセットします
$newArray = array_fill_keys($keys, 0);

// 出力リセット配列
print_r($newArray);

?>

コード解析

  1. array_keys($ array) :この関数は、array $ arrayのすべてのキー名を返します。その結果、 「リンゴ」「バナナ」「チェリー」を含む配列ができました。

  2. array_fill_keys($ keys、0)array_fill_keys関数を使用して、 $ keys arrayと同じキー名を持つ新しいarrayを作成しますが、すべての値は0で満たされています。

出力結果:

 Array
(
    [apple] => 0
    [banana] => 0
    [cherry] => 0
)

上記のように、すべてのキーの値は0に正常にリセットされています。

実用的なアプリケーションシナリオ

この手法は、特にアレイの値を再現する必要がある場合、ビッグデータを扱う場合に非常に便利です。データベースからさまざまなデータの配列を取得し、データをリセットまたは初期化すると、この方法がコードを効果的に簡素化できるとします。

注意すべきこと

  • array_fill_keysを使用する場合、キー名の渡された配列が有効であることを確認してください。 KeyName配列が空の場合、 array_fill_keysは空の配列を返します。

  • 元の配列のいくつかのキー名が削除されている場合、またはリセットする値が元の配列の値と異なる場合、 array_fill_keysは元の値を簡単に上書きできます。