PHPのarray_key_exists()関数を使用し指定されたキーが配列に存在するか確認してみます。
array_key_exists()関数は、指定されたキーが配列に存在するかチェックすることができます。キーが存在する場合はTRUE(真)を返し、キーが存在しない場合はFALSE(偽)を返します。
配列を指定するときにキーをセットしないと、「0」から始まり、値ごとに1ずつ増加する整数キーが生成され、整数キーと値がセットになります。
■基本的な構文
array_key_exists(key, array)
keyは、配列内のキーを指定します。
arrayは、指定されたキーが存在するか確認するために、配列を指定します。
■環境
・Windows10
・XAMPP 8.0.6
・PHP Version 8.0.6
■PHPのarray_key_exists()関数を使用し指定されたキーが配列に存在するか確認する
では、PHPのarray_key_exists()関数を使用し指定されたキーが配列に存在するか確認するスクリプトを書いていきます。
■コード
<html lang="ja">
<head>
<title>array_key_exists()関数を使用し指定されたキーが配列に存在するか確認する</title>
</head>
<body>
<?php
$str = array("a"=> "apple", "b"=>"banana","c"=>"lemon");
if(array_key_exists("b",$str)){
echo "キーが存在します。";
}else {
echo "キーが存在しません。";
}
?>
</html>
今回は、strという変数を宣言し、その中でarray()関数を使用します。array()関数内の引数,パラメーターとして、キーと値(文字列)をセットにして渡します。これで配列が作成されます。
作成後、if文を使用し、括弧内にarray_key_exists()関数を使用します。array_key_exists()関数の括弧内の第1引数,パラメーターとして、配列内で存在を確認するキーを渡します。第2引数,パラメーターとして、str変数を渡します。これで指定されたキーが配列に存在するかの確認が行われます。array_key_exists()関数でTRUE(真),条件を満たす場合は、echo文による文字列(キーが存在します)が出力されます。
一方で、array_key_exists()関数でFALSE(偽),条件を満たさない場合は、echo文による文字列(キーが存在しません)が出力されます。
■実行
では、このスクリプトを「check_if_key_exists_array.php」という名前で保存し、実行させてみます。
実行してみると、array_key_exists()関数を使用したことで、配列内で指定されたキーが存在するかの確認が行われ、今回のスクリプトの場合は、TRUE(真),条件を満たすので、echo文による文字列(キーが存在します)が出力されました。
■日本語の場合
次に、キーと値(文字列)が日本語の場合に、array_key_exists()関数を使用してみます。
■コード(check_if_key_exists_array_2.php)
<html lang="ja">
<head>
<title>array_key_exists()関数を使用し指定されたキーが配列に存在するか確認する</title>
</head>
<body>
<?php
$str = array("た"=> "田中", "お"=>"岡本","す"=>"鈴木");
if(array_key_exists("た",$str)){
echo "キーが存在します。";
}else {
echo "キーが存在しません。";
}
?>
</html>
■コード(check_if_key_exists_array_3.php)
<html lang="ja">
<head>
<title>array_key_exists()関数を使用し指定されたキーが配列に存在するか確認する</title>
</head>
<body>
<?php
$str = array("山"=> "山梨", "大"=>"大阪","東"=>"東京");
if(array_key_exists("東",$str)){
echo "キーが存在します。";
}else {
echo "キーが存在しません。";
}
?>
</html>
■実行
「check_if_key_exists_array_2.php」を実行してみると、指定されたキーがひらがなであっても、配列に存在するか確認できました。
「check_if_key_exists_array_3.php」を実行してみると、指定されたキーが漢字であっても、配列に存在するか確認できました。
コメント