array_key_exists

指定したキーまたは添字が配列にあるかどうかを調べる

説明

bool array_key_exists(stringintfloatboolresourcenull $key, array $array)

指定した key が配列に設定されている場合、 array_key_existstrue を返します。 key は配列添字として使用できる全ての値を使用可能です。

パラメータ

key

調べる値。

array

キーが存在するかどうかを調べたい配列。

戻り値

成功した場合に true を、失敗した場合に false を返します。

注意:

array_key_exists は、最初のレベルのキーだけを捜します。 多次元配列のネストされたキーは、この関数では見つけられません。

変更履歴

バージョン 説明
8.0.0 key パラメータは bool, float, int, null, resource, and string を引数として受け入れるようになりました。
8.0.0 arrayobject を渡すことは、 サポートされなくなりました。
7.4.0 arrayobject を渡すことは、 推奨されなくなりました。 property_exists を代わりに使ってください。

例1 array_key_exists の例

<?php
$searchArray = ['first' => 1, 'second' => 4];
var_dump(array_key_exists('first', $searchArray));
?>

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

bool(true)

例2 array_key_existsisset

issetnull 値を持つ配列キーに対して true を返しません。一方、array_key_existstrue を返します。

<?php
$searchArray = ['first' => null, 'second' => 4];

var_dump(isset($searchArray['first']));
var_dump(array_key_exists('first', $searchArray));
?>

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

bool(false)
bool(true)

参考

  • isset
  • array_keys
  • in_array
  • property_exists