PHPのarray_search()関数を使用し配列で値を検索しキーを取得する

PHPのarray_search()関数を使用し配列で値を検索しキーを取得してみます。

array_search()関数は、配列で値を検索し、キーを取得することができます。

戻り値は、値が配列内で見つかった場合はそのキーを返し、それ以外の場合はFALSE(偽)を返します。配列内で値が複数回見つかった場合、最初に一致したキーを返します。

■基本的な構文

array_search(value, array, strict)

valueは、配列内で検索する値を指定します。

arrayは、検索対象の配列を指定します。

strictは、このパラメータがTRUE(真)に設定されている場合、array_search()関数は配列内の同一の要素を検索することができます。

■環境

・Windows10

・XAMPP 8.0.6

・PHP Version 8.0.6

■PHPのarray_search()関数を使用し配列で値を検索しキーを取得する

では、PHPのarray_search()関数を使用し配列で値を検索しキーを取得するスクリプトを書いていきます。

■コード

<html lang="ja"> 
<head> 
<title>array_search()関数を使用し配列で値を検索しキーを取得する</title>
</head>
<body>
<?php
$str = array("a"=>"apple","b"=>"Banana","c"=>"Strawberry");
echo array_search("Strawberry",$str);
?>
</body>
</html>

今回は、strという変数を宣言し、その中でarray()関数を使用します。array()関数内の引数,パラメーターとして、キーと値(文字列)を渡します。これで配列が作成されます。

作成後、echo文とarray_search()関数を使用します。array_search()関数の括弧内には、第1の引数,パラメーターとして、配列内で検索する値(文字列)を渡します。第2の引数,パラメーターとして、検索対象となるstr変数を渡します。渡された情報を元に配列内で検索が行われ、キーを返します。返されたキーをecho文で出力します。

■実行

では、このスクリプトを「search_val_array_get_key.php」という名前で保存し、実行させてみます。

実行してみると、array_search()関数を使用したことにより、引数,パラメーターとして渡した配列内の値(文字列)の検索が行われ、値とセットのキーが取得されました。

■日本語の場合

次に配列内で検索する値(文字列)とキーが日本語の場合をやってみます。

■コード

<html lang="ja"> 
<head> 
<title>array_search()関数を使用し配列で値を検索しキーを取得する</title>
</head>
<body>
<?php
$str = array("た"=>"田中","ろ"=>"露伴","き"=>"木元");
echo array_search("露伴",$str);
?>
</body>
</html>

■実行

では、このスクリプトを「search_val_array_get_key_2.php」という名前で保存し、実行させてみます。

実行してみると、配列内で検索する値(文字列)、そして値とセットになっているキーが日本語でも、配列内の値(文字列)の検索が行われ、値とセットのキーが取得されました。

コメント

タイトルとURLをコピーしました