PHP入門 文字列関数 配列の内容を検索する(array_search関数)

配列から特定の値を検索するには、array_search関数を利用します。

構文:array_search関数

array_search(mixed $needle, array $haystack [, bool $strict =false]):int|string|false
$needle検索すべき値
$haystack検索対象の配列
$strict「===」演算子で比較するか

戻り値は、$needleが最初に見つかった要素のキーです。$needleが配列に存在しなかった場合はfalseを返します。

例:基本

要素が見つかった位置を返します。

<?php
$data = ['山田', '田中', '鈴木','井上','和田'];

var_dump(array_search('田中',$data));
var_dump(array_search('井上',$data));
実行結果
実行結果

例:大文字小文字が異なるパターン

<?php
$data = ['山田', '田中', '鈴木','井上','和田','Just'];

var_dump(array_search('JUST',$data));
実行結果
実行結果

例:数値と文字列を比較するパターン

<?php
$data = ['山田', '田中', '鈴木','井上','和田','Just','15'];

var_dump(array_search(15,$data));
実行結果
実行結果

例:厳密に型を区別したい場合

引数$strictをtrueにする。

<?php
$data = ['山田', '田中', '鈴木','井上','和田','Just','15'];

var_dump(array_search(15,$data,true));
実行結果
実行結果

例:連想配列を検索

<?php
$data2 = ['X' => 10, 'Y'  => 20, 'Z' => 30];

var_dump(array_search(10,$data2));
実行結果
実行結果