簡體   English   中英

從foreach循環php收到的總和值

[英]Sum values received from foreach loop php

我想對自定義函數中的值求和,其中接收的參數/參數是來自另一個文件中 foreach 循環的變量。

下面是代碼:

// $value is the looped variable from another function
function custom_function($value) {
  // simple logic
  $var = [];
  $var += $value;
  print_r($var);

  // using array logic
  $array = [];
  $array[] = $value;
  print_r($array);
}

問題是,使用任何print_r我得到的輸出為:

Array
(
    [0] => 100
)
Array
(
    [0] => 200
)

我需要的是 300,即 100 + 200 我懷疑的原因是$value是循環變量的總和。

$a = array('10','20','30');
$result = array();
$temp = 0;
foreach($a as $v)
{
  $temp  = $v+$temp; 
  array_push($result,$temp);

}
echo end($result);
echo '<br>';
print_r($result);

我在想$a是一個傳遞值的數組。 如果您不想更改大部分邏輯,請嘗試這樣做,只需創建 2 個臨時變量

您可以使用靜態變量來維護函數調用之間的總和:

function custom_function($value) {
    static $var = 0;
    $var += $value;
    echo "$var\n";
}

custom_function(100);
custom_function(200);

輸出:

100
300

3v4l.org 上的演示

您可以使用array_sum來計算數組值的總和

function custom_function($value) {
  // simple logic
  $var = [];
  $var += $value;
  print_r($var);
  print_r(array_sum($var));
}

 $array = array('100','200');
 $res= array(); //declare a new array 
 foreach($array as $val)
  {
    array_push($res,$val);  // push each element to newly created array
  }
 custom_function($res); //call custom function to calculate the sum of array elements

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM