現在の位置: ホーム> 最新記事一覧> PHP array_reduce() 関数の詳細な説明: コールバック関数を使用して配列を単一の値に減らす

PHP array_reduce() 関数の詳細な説明: コールバック関数を使用して配列を単一の値に減らす

M66 2025-11-06

PHP の array_reduce() 関数の概要

PHP の array_reduce() 関数は、非常に実用的な配列処理ツールです。配列内の複数の要素を繰り返し処理し、コールバック関数を通じてそれらを単一の値に減らすことができます。この記事では、array_reduce() の使用法を紹介し、この関数をよりよく理解して適用するのに役立つ実際のコード例を示します。

array_reduce() 関数の構文

mixed array_reduce(array $array, 電話び外し可能 $callback[,mixed $initial = NULL])

パラメータの説明:

  • $array: 処理される配列。
  • $callback: 各反復の操作を定義するために使用されるコールバック関数。この関数は 2 つのパラメータを受け入れます。1 つ目は前の反復の結果で、2 つ目は現在の配列要素です。
  • $initial: オプションのパラメータ。初期値を設定します。指定しない場合、最初の反復では配列の最初の要素が初期値として使用されます。

例: 配列要素の合計

数値を含む配列があり、数値を合計する必要があるとします。

 $numbers = [1, 2, 3, 4, 5];
$sum = array_reduce($numbers, function($carry, $item) {
    $carry + $item を戻るします。
});
エコー $sum; // 外力: 15

この例では、$carry は前の反復の結果を表し、$item は現在の要素です。 array_reduce() は配列要素を順番に追加し、最後に合計を取得します。

例: 配列要素を文字列に連結する

array_reduce() は、合計するだけでなく、配列要素を文字列に結合することもできます。

 $strings = ["Hello", "World", "!"];
$concatenatedString = array_reduce($strings, function($carry, $item) {
    $carry を戻るします。 「」。 $アイテム;
});
エコー $concatenatedString; // 外力: Hello World!

この例では、配列要素はコールバック関数を通じて完全な文字列に徐々に連結されます。

例: 配列要素の積を計算する

array_reduce() は、配列要素の乗算など、より複雑な計算を実行することもできます。

 $numbers = [1, 2, 3, 4, 5];
$product = array_reduce($numbers, function($carry, $item) {
    $carry * $item を戻るします。
}、1);
$product をエコーし​​ます。 // 外力: 120

ここでは、初期値 1 を指定することで、最初の反復で積が正しく計算されるようにします。

要約する

  • array_reduce() は、コールバック関数を使用して配列要素を単一の値に反復的に減らすことができます。
  • コールバック関数は、前の反復の結果と現在の要素という 2 つのパラメーターを受け入れます。
  • オプションの初期値パラメータは、反復の開始値を設定します。

array_reduce() をマスターすると、加算、結合、その他の複雑な演算のいずれであっても、配列処理ロジックが簡素化され、コードがより簡潔で効率的になります。