趣味は車輪の再発明♪

配列要素を検索 - [ 配列操作 / php ]


「小さな小さなサンプル&スニペット」
▲インデックスへ戻る▲
カテゴリ:「配列操作」

配列内で要素の位置を調べます。ほとんどの言語では、配列のインデックスを返し、見つからなかった場合は、ありえないインデックス(-1)を返します。ただし、通常の配列と、ハッシュのような連想配列が、明確に分けられていない言語では注意が必要です。

//3つの要素の配列
$arr = array('A','B','C');

//配列の最初から検索して位置を返します。
//みつからない場合はFALSEを返します。
$index = array_search('B', $arr);

//途中から検索する関数を定義します。
function array_search2($value, $arr, $searchFrom) {
	if($searchFrom >= 0) {
		$n = count($arr);
		for($i = $searchFrom; $i < $n; $i++) {
			if($arr[$i] === $value) {
				return $i;
			}
		}
	}
	return FALSE;
}

//2番目(arr[1]==='B'の位置)から検索します。
$indexC = array_search2('C', $arr, 2);//2を返します。
$indexA = array_search2('A', $arr, 2);//これはFALSEです。		

phpではarray_searchを使用します。 配列の途中から検索する機能は提供されていません。

カテゴリ「配列操作」の他のエントリ:
| 配列要素の有無を調べる | 配列要素を連結して文字列化 | ハッシュキーの有無を調べる |



RSS Feed Widget
配列要素を検索 - [ 配列操作 / php ]
(http://bicycle.life.coocan.jp/takamints/index.php/snippets/snippet/array/search/php)
by Koji Takami ( email: vzg03566@gmail.com, GitHub: takamin )