« PHP:array_reduce()関数 | メイン | PHP:array_merge()関数・array_merge_recursive()関数 »
2005年11月21日
PHP:array_filter()関数
array_filter()関数は、指定した配列の各要素に対してユーザ定義関数(function)を実行し、条件にマッチする要素のみで構成された配列を返します。
array_filter($ARRAY, $functionName);
$ARRAY:値を取り出す配列
$functionName:ユーザ定義関数を指定
※ユーザ定義関数は、配列の要素を受け取り、TRUEかFALSEを返すものである必要があります。ユーザ定義関数がTRUEを返した要素のみ、array_filter()関数の実行結果の配列に格納されます。
function myFiltering($ARRAY){
return(count($ARRAY) >= 2); //要素数が2以上の場合TRUEを返します。
}
$ARRAY1 = array(array(1), array(1, 2), array(1, 2, 3));
$NEWARRAY = array_filter($ARRAY1, "myFiltering");
print_r($NEWARRAY);
※上記の結果、「ARRAY([1]=>ARRAY([0]=>1 [1]=>2) [2]=>ARRAY([0]=>1 [1]=>2 [2]=>3))」を出力します。
※指定配列$ARRAYが連想配列の場合、キーは維持されます。
投稿者 wing : 2005年11月21日 01:06