Làm cách nào để tính tổng một mảng trong PHP?

Để tổng hợp tất cả các giá trị trong một mảng nhiều chiều nằm dưới một khóa cụ thể, chúng tôi sử dụng hai hàm mảng

Đầu tiên, chúng ta gọi hàm array_column[], hàm này trả về cho chúng ta một mảng gồm tất cả các giá trị được tìm thấy cho một khóa cụ thể

Thứ hai, chúng tôi sử dụng phương pháp array_sum[] để tổng hợp tất cả các giá trị đó

 'Pen',
        'price' => 3,
    ],
    [
        'name' => 'Paper',
        'price' => 5,
    ],
];

$sum = array_sum[array_column[$products, 'price']];
//=> 8

Chúng ta có thể tính tổng các phần tử mảng bằng cách sử dụng hàm array_sum[] được xác định trước trong PHP. Hàm này lấy tên mảng làm giá trị của nó và trả về tổng của tất cả các phần tử có trong mảng cụ thể đó

Ví dụ. Hàm PHP array_sum[]

Trong ví dụ đã cho, chúng tôi đã tính tổng của tất cả các phần tử mảng của mảng đã cho có tên là

  
 

	Calculate the sum of values in an array 
 
  
	  
  
  
0 bằng cách sử dụng hàm array_sum[] được xác định trước trong PHP

  
 

	Calculate the sum of values in an array 
 
  
	  
  
  


Tổng tất cả các phần tử của mảng là. 203

Ngoài việc sử dụng hàm PHP được xác định trước, chúng ta cũng có thể tính tổng tất cả các phần tử của một mảng bằng cách sử dụng vòng lặp for

Ví dụ. Sử dụng vòng lặp

Trong ví dụ đã cho, chúng ta đã tính tổng của tất cả các phần tử mảng của mảng

  
 

	Calculate the sum of values in an array 
 
  
	  
  
  
0 đã cho bằng cách sử dụng vòng lặp for

  
 

	Calculate the sum of values in an array 
 
  
	  
  
  


Tổng tất cả các phần tử của mảng là. 203

Phần kết luận

Trong bài học này, chúng ta đã học cách tính tổng của tất cả các phần tử mảng trong PHP. Chúng tôi đã thảo luận về hai phương pháp. Đầu tiên, chúng tôi đã tính tổng của tất cả các phần tử mảng bằng cách sử dụng hàm array_sum[] và lần thứ hai, chúng tôi đã sử dụng hàm

  
 

	Calculate the sum of values in an array 
 
  
	  
  
  
4 để tính tổng của tất cả các phần tử của một mảng

Đối với những người đã đến đây và đang tìm kiếm một giải pháp hợp nhất N mảng VÀ cũng tính tổng các giá trị của các khóa giống hệt nhau được tìm thấy trong N mảng, tôi đã viết hàm này cũng hoạt động theo cách đệ quy. [Nhìn thấy. https. //ý chính. github. com/Nickology/f700e319cbafab5eaedc]

Ví dụ

$a = array[ "A" => "bob", "sum" => 10, "C" => array["x","y","z" => 50] ];
$b = array[ "A" => "max", "sum" => 12, "C" => array["x","y","z" => 45] ];
$c = array[ "A" => "tom", "sum" =>  8, "C" => array["x","y","z" => 50, "w" => 1] ];

print_r[array_merge_recursive_numeric[$a,$b,$c]];

Sẽ cho kết quả

Array
[
    [A] => tom
    [sum] => 30
    [C] => Array
        [
            [0] => x
            [1] => y
            [z] => 145
            [w] => 1
        ]

]

Đây là mã


 * @access public
 * @return void
 */
function array_merge_recursive_numeric[] {

    // Gather all arrays
    $arrays = func_get_args[];

    // If there's only one array, it's already merged
    if [count[$arrays]==1] {
        return $arrays[0];
    }

    // Remove any items in $arrays that are NOT arrays
    foreach[$arrays as $key => $array] {
        if [!is_array[$array]] {
            unset[$arrays[$key]];
        }
    }

    // We start by setting the first array as our final array.
    // We will merge all other arrays with this one.
    $final = array_shift[$arrays];

    foreach[$arrays as $b] {

        foreach[$final as $key => $value] {

            // If $key does not exist in $b, then it is unique and can be safely merged
            if [!isset[$b[$key]]] {

                $final[$key] = $value;

            } else {

                // If $key is present in $b, then we need to merge and sum numeric values in both
                if [ is_numeric[$value] && is_numeric[$b[$key]] ] {
                    // If both values for these keys are numeric, we sum them
                    $final[$key] = $value + $b[$key];
                } else if [is_array[$value] && is_array[$b[$key]]] {
                    // If both values are arrays, we recursively call ourself
                    $final[$key] = array_merge_recursive_numeric[$value, $b[$key]];
                } else {
                    // If both keys exist but differ in type, then we cannot merge them.
                    // In this scenario, we will $b's value for $key is used
                    $final[$key] = $b[$key];
                }

            }

        }

        // Finally, we need to merge any keys that exist only in $b
        foreach[$b as $key => $value] {
            if [!isset[$final[$key]]] {
                $final[$key] = $value;
            }
        }

    }

    return $final;

}

?>

Làm cách nào để tính tổng các số trong PHP?

$sum = $number1+$number2; echo "Tổng của $number1 và $number2 là. ". $ tổng;

Làm cách nào để tính tổng mảng nhiều chiều trong PHP?

Để tổng hợp tất cả các giá trị trong một mảng nhiều chiều nằm dưới một khóa cụ thể, chúng tôi sử dụng hai hàm mảng. Đầu tiên, chúng ta gọi hàm array_column[] , hàm này trả về cho chúng ta một mảng gồm tất cả các giá trị được tìm thấy cho một khóa cụ thể. Thứ hai, chúng ta sử dụng phương thức array_sum[] để tính tổng tất cả các giá trị đó .

+= có hoạt động trên các mảng trong PHP không?

Toán tử + trong PHP khi được áp dụng cho mảng sẽ thực hiện công việc của mảng UNION . mảng $arr += mảng $arr1; .

Làm cách nào để lấy tổng các phần tử trong mảng được tìm thấy giữa hai số nguyên bằng PHP?

Trả lời. Sử dụng hàm array_sum[] của PHP .

Chủ Đề