PHP 8.4.1 Released!

array_find_key

(PHP 8 >= 8.4.0)

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

説明

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

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

パラメータ

array
検索する array
callback

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

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

戻り値

callbacktrue を返す最初の要素のキーを返します。 一致する要素が見つからない場合、 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() - コールバック関数を繰り返し配列に適用し、配列をひとつの値にまとめる
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top