どうも、ちょげ(@chogetarou)です。
連想配列(associative array)にキー(key)が存在するかどうか確認する方法を紹介します。
方法

連想配列(associative array)にキー(key)が存在するかどうかチェックする方法は、2つあります。
array_key_exists()
ひとつは、array_key_exists()を使う方法です。
まず、array_key_exists()を呼び出します。
そして、array_key_exists()の第1引数にキー、第2引数に対象の連想配列を指定します。
//arr=対象の連想配列, key=キー
array_key_exists(key, $arr)
上記のarray_key_exists()は、連想配列にキー(key)が存在すれば「true」、存在しなければ「false」を返します。
使用例1
<?php
$numbers = [
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
];
if (array_key_exists("one", $numbers)) {
echo "キーは存在します。";
} else {
echo "キーは存在しません。";
}
?>
出力:
キーは存在します。
使用例2
<?php
$numbers = [
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
];
if (array_key_exists("ten", $numbers)) {
echo "キーは存在します。";
} else {
echo "キーは存在しません。";
}
?>
出力:
キーは存在しません。
isset()
もうひとつは、isset()を使う方法です。
まず、isset()を呼び出します。
そして、isset()の引数で、連想配列のキーに[]でアクセスします。
//arr=対象の連想配列, key=キー
isset($arr[key])
上記のisset()は、連想配列のキー(key)が存在すれば「true」、存在しなければ「false」を返します。
使用例1
<?php
$numbers = [
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
];
if (isset($numbers["one"])) {
echo "キーは存在します。";
} else {
echo "キーは存在しません。";
}
?>
出力:
キーは存在します。
使用例2
<?php
$numbers = [
"one" => 1,
"two" => 2,
"three" => 3,
"four" => 4,
"five" => 5,
];
if (isset($numbers["ten"])) {
echo "キーは存在します。";
} else {
echo "キーは存在しません。";
}
?>
出力:
キーは存在しません。
まとめ
連想配列(associative array)にキー(key)が存在するかどうかチェックする方法は、次の2つです。
- array_key_exists()を使う方法
array_key_exists(key, $arr)
- isset()を使う方法
isset($arr[key])
コメント