array_rand
array_replace_recursive
配列 関数
PHP Manual

# array_reduce

(PHP 4 >= 4.0.5, PHP 5)

array_reduce — コールバック関数を用いて配列を普通の値に変更することにより、配列を再帰的に減らす

### 説明

mixed array_reduce ( array `$input` , callback `$function` [, mixed `$initial` = `NULL` ] )

array_reduce() は、配列 `input` の各要素に `function` 関数を繰り返し適用し、 配列を一つの値に減らします。

### パラメータ

`input`

  入力の配列。

`function`

  コールバック関数。

`initial`

  オプションの `intial` が利用可能な場合、処理の最初で使用されたり、 配列が空の場合の最終結果として使用されます。

### 返り値

結果の値を返します。

配列が空で `initial` が渡されなかった場合は、 array_reduce() は `NULL` を返します。

### 変更履歴

バージョン | 説明
--- | ---
5.3.0 | `initial` に mixed を指定できるようになりました。 これまでは integer のみでした。

### 例

例1 array_reduce() の例

`<?php
function rsum($v, $w)
{
$v += $w;
return $v;
}
function rmul($v, $w)
{
$v *= $w;
return $v;
}
$a = array(1, 2, 3, 4, 5);
$x = array();
$b = array_reduce($a, "rsum");
$c = array_reduce($a, "rmul", 10);
$d = array_reduce($x, "rsum", "No data to reduce");
?>`

これにより、$b の値は 15 となり、$c の値は 1200 (= 10*1*2*3*4*5)、そして $d の値は No data to reduce となります。

### 参考

- array_filter() - コールバック関数を使用して、配列の要素をフィルタリングする
- array_map() - 指定した配列の要素にコールバック関数を適用する
- array_unique() - 配列から重複した値を削除する
- array_count_values() - 配列の値の数を数える

array_rand
array_replace_recursive
配列 関数
PHP Manual