PHP入門 配列関数 配列内の要素を順に処理して1つにまとめる(array_reduce関数)
array_reduce関数を利用します。
構文:array_reduce関数
array_reduce(array $array, callable $callback [, mixed $inital]):mixed
$array | 処理対処の配列 |
$callback | 要素を演算する処理 |
$initial | 初期化 |
コールバック関数(引数$callback)の条件は、以下の通りです。
- 演算結果を格納するための変数(ここでは$result)
- 個々の要素を受け取るための変数(ここでは$x)
を受け取ります。$resultの内容は引き継がれていくので、この例であれば引数$resultに対して順に要素の値を掛けこんでいくという意味になります。
<?php
$data = [2,4,6,8];
$multi = array_reduce($data, function($result,$x){
return $result * $x;
},1);
print_r($multi);