目次
1. array_reduce 関数を使用して合計を実装します。
2. foreach ループを使用して合計を実装する
3. array_sum 関数を使用して合計を実装する
4. まとめ
ホームページ バックエンド開発 PHPの問題 PHPで1次元配列の値を合計する方法

PHPで1次元配列の値を合計する方法

Apr 23, 2023 pm 07:29 PM

PHP では、配列は非常に一般的に使用されるデータ型であり、配列内の指定された値の合計演算も一般的な要件の 1 つです。この記事では、PHP を使用して 1 次元配列の値を合計する方法を紹介し、参考として関連する例をいくつか示します。

1. array_reduce 関数を使用して合計を実装します。

array_reduce 関数は配列内のすべての要素を削減でき、削減方法は自分で定義できます。配列内の特定の属性を合計する必要がある場合、その属性をリダクション操作のパラメーターとして使用できます。具体的な実装は次のとおりです:

$numbers = array(10, 20, 30, 40, 50);
$sum = array_reduce($numbers, function($carry, $item) {
    return $carry + $item;
}, 0);
echo "数组总和为:" . $sum;
ログイン後にコピー

上記のコードでは、最初に配列を定義します$numbers そして、array_reduce 関数を使用して合計演算を実行します。リダクション操作では、$carry 変数を使用して最後のリダクション後の結果を保存します。$item 変数は現在の要素の値を表します。この例では、リダクション演算は単純な加算演算であり、0 は最初のリダクション演算の初期値を表します。

上記のコードを実行すると、次の結果が得られます:

数组总和为:150
ログイン後にコピー
ログイン後にコピー

上記の例は、array_reduce 関数を使用して 1 次元配列内の要素の合計を解く方法を示しています。しかし、1 次元配列内の属性を合計したい場合は、どうすればよいでしょうか?このとき、リダクション操作のパラメータとしてコールバック関数を使用することができ、コールバック関数内でリダクション属性をフィルタリングして追加することができます。具体的な実装は次のとおりです。

$students = array (
    "Tom" => array("age" => 23, "score" => 80),
    "Jerry" => array("age" => 22, "score" => 90),
    "Mickey" => array("age" => 23, "score" => 85)
);

$sum = array_reduce($students, function($carry, $item) {
    return $carry + $item['score'];
}, 0);
echo "学生成绩总分为:" . $sum;
ログイン後にコピー

上記のコードでは、学生情報の配列 $students を定義します。各要素は、名前、年齢、スコアで構成されます。 array_reduce 関数とコールバック関数を使用して各学生要素のスコアを累積し、学生の成績の合計スコアを取得します。

上記のコードを実行すると、次の結果が得られます:

学生成绩总分为:255
ログイン後にコピー
ログイン後にコピー

上記の例からわかるように、array_reduce 関数を使用して、特定の属性の合計演算を柔軟に実装できます。 1次元配列で。

2. foreach ループを使用して合計を実装する

array_reduce 関数と比較して、PHP では通常の foreach ループを使用して、1 次元配列内の特定の属性の合計を実装することもできます。具体的な実装は次のとおりです。

$students = array (
    "Tom" => array("age" => 23, "score" => 80),
    "Jerry" => array("age" => 22, "score" => 90),
    "Mickey" => array("age" => 23, "score" => 85)
);

$sum = 0;
foreach ($students as $student) {
    $sum += $student['score'];
}
echo "学生成绩总分为:" . $sum;
ログイン後にコピー

ここでの実装は比較的単純です。つまり、foreach ループを使用して配列内のすべての要素を順番に走査し、各要素のスコアを累積して、最終的にスコアを取得します。生徒の成績の合計スコア。

上記のコードを実行すると、次の結果が得られます:

学生成绩总分为:255
ログイン後にコピー
ログイン後にコピー

foreach ループの使用も一般的な実装方法であり、特に小さな配列の処理に適していることがわかります。

3. array_sum 関数を使用して合計を実装する

array_reduce 関数に加えて、PHP は配列要素の合計を求めるために特に使用される array_sum 関数も提供します。この関数は非常に単純です。配列をパラメータとして受け取り、その要素の合計を返すだけです。具体的な実装は次のとおりです:

$numbers = array(10, 20, 30, 40, 50);
$sum = array_sum($numbers);
echo "数组总和为:" . $sum;
ログイン後にコピー

上記のコードでは、array_sum 関数を呼び出して配列を合計します。 $numbers 操作を実行し、最後にその合計を取得します。

上記のコードを実行すると、次の結果が得られます:

数组总和为:150
ログイン後にコピー
ログイン後にコピー

array_sum 関数は、1 次元のデジタル インデックス配列を解くためにのみ使用できることに注意してください。 1 次元の連想配列で特定の値を計算する 属性を合計するには、まず array_column 関数を使用して数値インデックス配列に変換し、次に array_sum 関数を使用して合計を実行する必要があります。

4. まとめ

この記事では、array_reduce 関数、foreach ループ、array_sum 関数など、PHP で 1 次元配列の属性を合計する実装方法を紹介します。比較すると、array_reduce 関数は最も柔軟性が高く、さまざまなシナリオに適応できますが、複雑さも比較的高くなります。 foreach ループと array_sum 関数は、より単純かつ単純で、小さな配列の処理に適しています。最適な結果を達成するために、実際のニーズに応じてさまざまな実装方法を選択できます。

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

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

最新のPHPコーディング基準とベストプラクティスは何ですか? 最新のPHPコーディング基準とベストプラクティスは何ですか? Mar 10, 2025 pm 06:16 PM

最新のPHPコーディング基準とベストプラクティスは何ですか?

PHP拡張機能とPECLを使用するにはどうすればよいですか? PHP拡張機能とPECLを使用するにはどうすればよいですか? Mar 10, 2025 pm 06:12 PM

PHP拡張機能とPECLを使用するにはどうすればよいですか?

PHPにメッセージキュー(rabbitmq、redis)を実装する方法は? PHPにメッセージキュー(rabbitmq、redis)を実装する方法は? Mar 10, 2025 pm 06:15 PM

PHPにメッセージキュー(rabbitmq、redis)を実装する方法は?

PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか? PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか? Mar 03, 2025 pm 04:47 PM

PHPアレイの重複排除は、パフォーマンスの損失について考慮する必要がありますか?

PHPアレイの重複排除のための最適化手法は何ですか PHPアレイの重複排除のための最適化手法は何ですか Mar 03, 2025 pm 04:50 PM

PHPアレイの重複排除のための最適化手法は何ですか

PHPアレイの重複排除は、キー名の一意性を利用できますか? PHPアレイの重複排除は、キー名の一意性を利用できますか? Mar 03, 2025 pm 04:51 PM

PHPアレイの重複排除は、キー名の一意性を利用できますか?

リフレクションを使用してPHPコードを分析および操作する方法は? リフレクションを使用してPHPコードを分析および操作する方法は? Mar 10, 2025 pm 06:12 PM

リフレクションを使用してPHPコードを分析および操作する方法は?

PHPアレイの重複排除のためのベストプラクティスは何ですか PHPアレイの重複排除のためのベストプラクティスは何ですか Mar 03, 2025 pm 04:41 PM

PHPアレイの重複排除のためのベストプラクティスは何ですか

See all articles