【PHP】array_key_exists()で配列や連想配列にキーが存在するかどうか調べる!

エンジニアに特化した転職エージェント!

・IT/Web系エンジニアの経験者の方
・どこの転職エージェントを利用しようか迷っている方

それなら、キッカケエージェントにご相談!

キッカケエージェントでは、少数精鋭のエージェントが、エンジニアの経験やスキル、志向性などをカウンセリングし、的確なアドバイスを提供します!

また、徹底した企業へのヒアリングにより、最適なマッチングを実現し、今では内定率が一般的なエージェントの2倍以上となっています!

転職エージェントに迷っている方、まずは無料でキャリア相談から!




(この記事は2022年7月30日に投稿されました。)

PHPで配列や連想配列にキーが存在するかどうかを調べる方法として、array_key_exists()があります。

array_key_exists()とは配列に指定したキーがあるかどうかを調べる関数であり、真偽値を返り値として返すようになります。

そのため、配列に指定したキーが存在する場合は「True」を、配列に指定したキーが存在しない場合は「False」が返されます。

そして、array_key_exists()は、連想配列や2次元配列や3次元配列のような多次元配列の中のキーを調べることもできます。

今回はPHPのarray_key_exists()で配列や連想配列にキーが存在するかどうか調べる方法について紹介していきます。

この記事はこんな方におすすめ
・PHPで配列に指定したキーがあるか調べたい人

array_key_exists()とは

冒頭でも言いましたが、array_key_exists()とは、配列に指定したキーがあるかどうかを調べる関数となります。

存在する場合は「true」、存在しない場合は「false」のように、array_key_exists()は真偽値を返り値として返すようになります。

array_key_exists()の書き方

array_key_exists()の書き方は下記のようになります。

array_key_exists()は基本2つのパラメータを指定して使用することができます。

array_key_exists()のパラメータ

array_key_exists()のパラメータは下記のようになります。

  1. 調べたいキー(必須):
    配列の中にあるかどうか調べたいキーを指定する
  2. キーの有無を調べたい配列(必須):
    キーの有無を調べたい配列を指定する

array_key_exists()は必須なパラメータとして「調べたいキー」と「キーの有無を調べたい配列」を指定します。

array_key_exists()で配列にキーが存在するかどうか調べるサンプルコード

array_key_exists()で配列にキーが存在するかどうか調べるサンプルコードをご紹介します。

ここでは下記の2つの場合で、array_flip()を使用します。

  1. 配列に指定したキーが存在する場合
  2. 配列に指定したキーが存在しない場合
  3. 指定したキーの値がNULLの場合

配列に指定したキーが存在する場合

配列に指定したキーが存在する場合にarray_key_exists()を使用してみます。

⚫︎ index.php

実行結果

配列に指定したキーが存在する場合にarray_key_exists()を使用した結果

指定したキーが存在する場合にarray_key_exists()を使用すると、「true」が返されるようになります。

配列に指定したキーが存在しない場合

配列に指定したキーが存在しない場合にarray_key_exists()を使用してみます。

⚫︎ index.php

実行結果

配列に指定したキーが存在しない場合にarray_key_exists()を使用した結果

指定したキーが存在しない場合にarray_key_exists()を使用すると、「false」が返されるようになります。

指定したキーの値がNULLの場合

指定したキーの値が「NULL」の場合にarray_key_exists()を使用してみます。

⚫︎ index.php

実行結果

指定したキーの値がNULLの場合にarray_key_exists()を使用した結果

array_key_exists()は「NULL」が設定されているものでも、配列が定義されていると「True」を返します。

array_key_exists()で連想配列にキーが存在するかどうか調べるサンプルコード

array_key_exists()で連想配列にキーが存在するかどうか調べるサンプルコードをご紹介します。

⚫︎ index.php

実行結果

array_key_exists()で連想配列にキーが存在するかどうか調べた結果

array_key_exists()を連想配列で使用すると、指定キーが存在する場合は「True」、指定したキーが存在しない場合は「False」が返されています。

array_key_exists()で多次元配列にキーが存在するかどうか調べるサンプルコード

array_key_exists()で多次元配列にキーが存在するかどうか調べるサンプルコードをご紹介します。

2次元配列に使用する場合

array_key_exists()を2次元配列に使用してみます。

⚫︎ index.php

実行結果

array_key_exists()を2次元配列で使用した結果

array_key_exists()で2次元配列のキーを調べることができます。

また、配列の後ろにインデックスを1つ指定することで、2次元配列内にある1次元配列のキーの有無を調べることができます。

3次元配列に使用する場合

array_key_exists()を3次元配列に使用してみます。

⚫︎ index.php

実行結果

array_key_exists()を3次元配列で使用した結果

array_key_exists()で3次元配列のキーを調べることができます。

また、配列の後ろにインデックスを1つ指定することで、3次元配列内にある2次元配列のキーの有無を調べることができ、2つ指定することで、3次元配列内にある1次元配列のキーの有無を調べることができます。

配列や連想配列のキーを取得したい場合

配列や連想配列のキーを取得したい場合はarray_keys()を使用します。

array_keys()とは、指定した配列や連想配列のキーを全て配列形式で取得する関数となります。

⚫︎ index.php

実行結果

array_keys()で配列や連想配列のキーを取得した結果

array_keys()によって配列や連想配列のキーを取得しています。

もし、array_keys()について詳しく知りたい場合は下記の記事をご参考ください。

まとめ

⚫︎ array_key_exists()とは配列に指定したキーがあるかどうかを調べる関数である

⚫︎ array_key_exists()は2つのパラメータを指定して使用する
・ 調べたいキー(必須)
・ キーの有無を調べたい配列(必須)

⚫︎ 配列に指定したキーが存在する場合にarray_keys()を使用すると「True」を返す

⚫︎ 配列に指定したキーが存在しない場合にarray_keys()を使用すると「False」を返す

⚫︎ 指定したキーの値がNULLの場合にarray_keys()を使用すると「True」を返す
(「NULL」が設定されていても、配列が定義されていると格納されている値とみなす)

⚫︎ array_key_exists()は連想配列のキーが存在するかどうかを調べることができる

⚫︎ array_key_exists()は多次元配列でもキーが存在するかどうかを調べることができる

⚫︎ 配列や連想配列のキーを取得したい場合はarray_keys()を使用する