コールバック関数を満たす最初の要素のキーを返す

# array_find_key

(PHP 8 >= 8.4.0)

array_find_key — コールバック関数を満たす最初の要素のキーを返す

### 説明

function array_find_key(array `$array`, callable `$callback`): mixed

array_find_key() は、指定された `callback` が `true` を返す array の最初の要素のキーを返します。 見つからない場合 `null` を返します。

### パラメータ

`array`
  検索する array。
`callback`

  各要素を調べるコールバック関数。シグネチャは次の通りです:

  function callback(mixed `$value`, mixed `$key`): bool
  この関数が `true` を返すと、 その要素のキーが array_find_key() から返され、 以降の要素に対してはコールバックは呼び出されません。

### 戻り値

`callback` が `true` を返す最初の要素のキーを返します。 一致する要素が見つからない場合、 `null` を返します。

### 例

例1 array_find_key() の例

    <?php
    $array = [
        'a' => 'dog',
        'b' => 'cat',
        'c' => 'cow',
        'd' => 'duck',
        'e' => 'goose',
        'f' => 'elephant'
    ];

    // 名前が4文字より長い最初の動物を探します。
    var_dump(array_find_key($array, function (string $value) {
        return strlen($value) > 4;
    }));

    // 名前がfで始まる最初の動物を探します。
    var_dump(array_find_key($array, function (string $value) {
        return str_starts_with($value, 'f');
    }));

    // 配列キーが動物の最初の文字と一致する最初の動物を探します。
    var_dump(array_find_key($array, function (string $value, $key) {
       return $value[0] === $key;
    }));

    // 配列キーが正規表現にマッチする最初の動物を探します。
    var_dump(array_find_key($array, function ($value, $key) {
       return preg_match('/^([a-f])$/', $key);
    }));
    ?>

上の例の出力は以下となります。

    string(1) "e"
    NULL
    string(1) "c"
    string(1) "a"

### 参考

- array_find() - コールバック関数を満たす最初の要素を返す
- array_all() - array のすべての要素がコールバック関数を満たすかどうかを調べる
- array_any() - array のいずれかの要素がコールバック関数を満たすかどうかを調べる
- array_filter() - コールバック関数を使用して、配列の要素をフィルタリングする
- array_reduce() - コールバック関数を繰り返し配列に適用し、配列をひとつの値にまとめる

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open