ホームページ >バックエンド開発 >PHPの問題 >PHPで配列要素間の合計を求める方法

PHPで配列要素間の合計を求める方法

PHPz
PHPzオリジナル
2023-04-23 10:07:15638ブラウズ

PHP では、配列の要素間の合計を求めるのが一般的な操作です。この目標を達成するにはさまざまな方法がありますが、ここでは一般的な方法をいくつか紹介します。

  1. ループ蓄積方法

まず、最も一般的な方法は配列要素をループして蓄積する方法で、具体的な実装方法は次のとおりです。 ##このメソッドは非常に単純で、for ループを通じて配列要素を走査し、各要素を $sum 変数に累積し、最後に配列要素の合計を取得します。

array_sum 関数
  1. PHP には、配列要素の合計を計算するための組み込み関数 array_sum が用意されています。これは非常に便利です。配列を として渡すだけで済みます。パラメータ、例:
$myArray = array(1, 2, 3, 4, 5);
$sum = 0;
for ($i = 0; $i < count($myArray); $i++) {
    $sum += $myArray[$i];
}
echo "数组元素之和为:" . $sum;

array_reduce function
  1. array_reduce は、特定の条件に従って配列内のすべての値を計算するために使用される別の PHP 関数です。単一の値を取得するコールバック関数。構文は次のとおりです。
$myArray = array(1, 2, 3, 4, 5);
$sum = array_sum($myArray);
echo "数组元素之和为:" . $sum;

このうち、$input は計算が必要な配列を表し、$function はコールバック関数を表し、$initial はオプションのパラメーターであり、計算に使用される初期値を示します。

以下は例です:

array_reduce ( array $input , callable $function [, mixed $initial = NULL ] ) : mixed

このメソッドは、array_reduce 関数と無名関数を使用します。無名関数の $carry パラメーターと $item パラメーターは、それぞれ計算結果と現在の配列要素を表します。各反復中に、現在の要素が $carry に追加され、最終的に配列要素の合計が取得されます。

eval 関数の使用
  1. eval 関数は文字列を PHP コードとして実行できます。配列を文字列に変換して eval 関数に入れると、配列要素の合計を取得できます。例:
$myArray = array(1, 2, 3, 4, 5);
$sum = array_reduce($myArray, function($carry, $item) {
    return $carry + $item;
});
echo "数组元素之和为:" . $sum;

このメソッドは、配列要素を加算式に結合し、それを eval 関数に渡して実行し、最後に配列要素の合計を取得します。

まとめ

上記は配列要素の合計を計算する4つの方法ですが、このうちarray_sum関数とarray_reduce関数はPHPに組み込まれており、より効率的です。安全かもしれないという疑問があり、注意して使用する必要があります。どの方法を選択する場合でも、特定のアプリケーション シナリオに基づいて最も適切な方法を選択する必要があります。

以上がPHPで配列要素間の合計を求める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。