« PHP:array_walk()関数 | メイン | PHP:array_filter()関数 »

2005年11月19日

PHP:array_reduce()関数

array_reduce()関数は、指定した配列の各要素に対してユーザ定義関数(function)を実行し、独自の規制で結合します。

array_reduce($ARRAY, $functionName[, $default]);

$ARRAY:値を取り出す配列
$functionName:ユーザ定義関数を指定
$default:ユーザ定義関数へ渡す初期値(省略可能)

ユーザ定義関数の第1引数には演算結果を格納する変数を、第2引数には個々の要素値を受け取るための変数を指定します。

function sum($ans, $value){
    $ans += $value;
    return $ans;
}

$ARRAY1 = array(1, 3, 5);
print array_reduce($ARRAY1, "sum");  //1+3+5=9を返します。
print array_reduce($ARRAY1, "sum", 2);  //2+1+3+5=11を返します。

$ARRAY2 = array();
print array_reduce($ARRAY2, "sum", 2);  //$ARRAY2が空なので、初期値の2を返します。

投稿者 wing : 2005年11月19日 00:19

コメント