Written by Kasumi

【PHP】連想配列の中に指定の値が存在する場合、そのキーを取得する方法

PHPで連想配列の中に指定の値が存在する場合、そのキーを取得したい。

本記事ではこのような悩みを解決します。

指定の値が存在する場合、そのキーを取得

<?php
  $age = [
    '佐藤' => 30,
    '鈴木' => 20,
    '佐々木' => 60,
    '加藤' => 60,
  ];
 
  //キーの存在を調べる
  echo array_search(60,$age);
  //佐々木
?>

連想配列の中に指定の値が存在する場合、そのキーを取得するコード例です。

array_search関数を使います。

使い方は以下の通りです。

array_search(指定の値,配列);

array_search関数の第一引数に配列要素のを指定。

第二引数に探す連想配列を指定します。

以上で指定の値が存在する場合、対応する最初のキーが取得されます。

指定の値が複数存在する場合、そのキーを全て取得

<?php
  $age = [
    '佐藤' => 30,
    '鈴木' => 20,
    '佐々木' => 60,
    '加藤' => 60,
  ];
 
  //キーの存在を全て調べる
  print_r(array_keys($age,60));
  //Array ( [0] => 佐々木 [1] => 加藤 )
?>

連想配列の中に指定の値が複数存在する場合、そのキーを全て取得するコード例です。

全て取得するにはarray_keys関数を使います。

第一引数に探す配列。

第二引数に、指定の値を代入します。

指定の値が複数存在する場合、全てのキーを配列で取得できます。

まとめ

PHPで連想配列の中に指定の値が存在する場合、そのキーを取得する方法について紹介しました。

以上で解説を終わります。

目次

関連記事

PHP

【PHP】同じ関数名を使ってしまい衝突エラーになるのを防ぐ方法【名前空間を使おう】

2023.04.11
232
PHP プログラミング

Use of undefined constant campaign – assumed ‘文字列'(this will throw an Error in a future version of PHP) inエラーがでる場合の対処方法

2022.01.29
799
PHP

【PHP】配列から最大・最小値を求める方法

2023.03.16
288
PHP

【PHP】指定した区切り文字で文字列を分割。配列に変換する方法

2023.03.07
178