PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

array_reduce - コールバック関数を用いて配列を普通の値に変更することにより、配列を再帰的に減らす | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

array_reduce

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

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

説明

mixed array_reduce ( array $array , callable $callback [, mixed $initial = NULL ] )

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

パラメータ

array

入力の配列。

callback
mixed callback ( mixed $carry , mixed $item )
carry

前回の反復処理の結果を保持します。最初の反復処理のときには、 initial の値を保持しています。

item

現在の反復処理の値を保持します。

initial

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

返り値

結果の値を返します。

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

変更履歴

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

例1 array_reduce() の例

<?php
function sum($carry$item)
{
    
$carry += $item;
    return 
$carry;
}

function 
product($carry$item)
{
    
$carry *= $item;
    return 
$carry;
}

$a = array(12345);
$x = array();

var_dump(array_reduce($a"sum")); // int(15)
var_dump(array_reduce($a"product"10)); // int(1200), because: 10*1*2*3*4*5
var_dump(array_reduce($x"sum""No data to reduce")); // string(17) "No data to reduce"
?>

参考

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


忘却曲線を使ってこの関数を確実に記憶に残す

フォーラムで「array_reduce - コールバック関数を用いて配列を普通の値に変更することにより、配列を再帰的に減らす」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | array_reduce - コールバック関数を用いて配列を普通の値に変更することにより、配列を再帰的に減らす」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: