ホームページ > PHPフレームワーク > ThinkPHP > thinkphp が配列の合計を実行する方法を説明する例

thinkphp が配列の合計を実行する方法を説明する例

PHPz
リリース: 2023-04-13 18:48:45
オリジナル
759 人が閲覧しました

ThinkPHP では、配列の合計は非常に基本的ですが、非常に実用的な操作です。この記事では、ThinkPHP フレームワークを使用して配列の合計を実行する方法を紹介します。

まず、配列が必要です。次の配列があるとします。

$arr = array(1,2,3,4,5);
ログイン後にコピー

この配列を合計したい場合は、PHP ネイティブ関数 array_sum() を使用できます:

$sum = array_sum($arr);
echo $sum; // 输出15
ログイン後にコピー

注、array_sum() はネイティブ関数です。使用する前に、PHP がインストールされ、関連する拡張機能が有効になっていることを確認する必要があります。そうしないと、エラーが報告されます。同時に、このメソッドは連想配列にも使用できます。例:

$arr = array('a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5);
$sum = array_sum($arr);
echo $sum; // 输出15
ログイン後にコピー

もちろん、ThinkPHP には、配列の合計演算の実行に役立つメソッドもいくつか用意されています。

ThinkPHP では、array_sum メソッドを使用して配列を合計できます。このメソッドは、配列パラメータを渡さずに配列を直接操作します。例:

$arr = array(1,2,3,4,5);
$sum = \think\helper\Arr::sum($arr);
echo $sum; // 输出15
ログイン後にコピー

ここでは、名前空間 think\helper\Arrsum メソッドを使用して、配列に対して合計演算を実行します。このメソッドは、配列の合計を表す浮動小数点数を返します。

ただし、この方法はインデックス配列の合計しか計算できないため、連想配列を操作する場合には適していません。連想配列を合計したい場合は、array_reduce メソッドと無名関数を組み合わせて使用​​できます。たとえば、次のようになります。

$arr = array('a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5);
$sum = array_reduce($arr, function($carry, $item) {
    return $carry + $item;
});
echo $sum; // 输出15
ログイン後にコピー

ここでは、array_reduce を使用します。配列のメソッド。このメソッドは、処理される配列とコールバック関数の 2 つのパラメーターを受け取ります。コールバック関数の 2 つのパラメータはアキュムレータと現在の要素であり、各反復でアキュムレータと現在の要素が追加され、結果が返されます。最終結果は配列の合計です。

もちろん、ThinkPHP は、便利な配列削減操作のための array_reduce カプセル化メソッド reduce も提供します。例:

$arr = array('a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5);
$sum = \think\helper\Arr::reduce($arr, function($carry, $item) {
    return $carry + $item;
});
echo $sum; // 输出15
ログイン後にコピー

ここでは、think\helper\Arrreduce メソッドを使用します。このメソッドの第 1 パラメータは処理対象の配列、第 2 パラメータはコールバック関数であり、使い方は array_reduce と同じです。

要約すると、配列の合計演算には、array_sum メソッドと array_reduce メソッドを使用するか、連想演算には array_reduce## を使用できます。 #カプセル化方法reduce。いずれの方法でも、配列の合計演算を簡単に実行できます。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート