array_reduce()

PHPのarray_reduce()関数は、ユーザー定義関数を再帰的に適用し、配列の全ての要素の値を、ひとつの値にまとめる組み込み関数。

定義

多様な型 array_reduce( 配列型 $input, コールバック $function[, 多様な型 $initial] );

パラメータ

配列型 $input

ひとつの値にまとめる配列。

コールバック $callback

まとめる際に用いるユーザー定義関数を指定。

多様な型 $initial

オプション。

コールバック関数に、最初に渡す値。

戻り値

多様な型。

配列要素の値を、ひとつにまとめた値。

構文

ユーザー定義関数で、配列の全ての要素の値を、ひとつの値にまとめる

ひとつの値 = array_reduce( ひとつの値にまとめる配列, コールバック関数 );

「ひとつの値にまとめる配列」の全ての配列要素を、「コールバック関数」を用いて、「ひとつの値」にまとめる。

ユーザー定義関数で、特定の値と、配列の全ての要素の値を、ひとつの値にまとめる

ひとつの値 = array_reduce( ひとつの値にまとめる配列, コールバック関数, 最初に渡す値 );

「最初に渡す値」と、「ひとつの値にまとめる配列」の全ての配列要素を、「コールバック関数」を用いて、「ひとつの値」にまとめる。

サンプル

ユーザー定義関数で、配列の全ての要素の値を、ひとつの値にまとめる(1)

配列の全ての要素の値「1、2、3、4」を、合計する。

<?php
function arraySum( $varA, $varB ) {
    return( $varA += $varB );
}
$varArray = array( 1, 2, 3, 4 );
$varSum = array_reduce( $varArray, "arraySum" );
echo "$varSum";
?>

↓↓↓出力結果↓↓↓

10

ユーザー定義関数で、配列の全ての要素の値を、ひとつの値にまとめる(2)

「10」と、配列の全ての要素の値「1、2、3、4」を、合計する。

<?php
function arraySum( $varA, $varB ) {
    return( $varA += $varB );
}
$varArray = array( 1, 2, 3, 4 );
$varSum = array_reduce( $varArray, "arraySum", 10 );
echo "$varSum";
?>

↓↓↓出力結果↓↓↓

20

ユーザー定義関数で、配列の全ての要素の値を、ひとつの値にまとめる(3)

「10」と、配列の全ての要素の値「1、2、3、4」を、掛け合わせる。

<?php
function arraySum( $varA, $varB ) {
    return( $varA *= $varB );
}
$varArray = array( 1, 2, 3, 4 );
$varSum = array_reduce( $varArray, "arraySum", 10 );
echo "$varSum";
?>

↓↓↓出力結果↓↓↓

240

ユーザー定義関数で、連想配列の全ての要素の値を、ひとつの値にまとめる

連想配列の全ての要素の値「1、2、3、4」を、合計する。

<?php
function arraySum( $varA, $varB ) {
    return( $varA += $varB );
}
$varArray = array(
    "a" => 1,
    "b" => 2,
    "c" => 3,
    "d" => 4
);
$varSum = array_reduce( $varArray, "arraySum" );
echo "$varSum";
?>

↓↓↓出力結果↓↓↓

10

スポンサード リンク

カテゴリー: PHP, コールバック, 組み込み関数, 計算, 配列 タグ: パーマリンク