为什么我的数组会这样


why does my array behave like this

while($pp_info = mysqli_fetch_array($sqlpinfo)){
           $product_title = $pp_info['book_name'];
           $books_image = $pp_info['book_upload'];
           $books_price = array($pp_info['book_price']);
 }
 Array ( [0] => 324 ) 
 Array ( [0] => 500 ) 
 Array ( [0] => 543 ) 
 Array ( [0] => 22 )

如何获得每个数字的总和?

我使用array_sum($books_price);

结果是 324 500 543 22

你应该

在mysql查询中使用SUM(book_price) As Total

SELECT SUM(column_name) FROM table_name;

查看此链接以获取更多详细信息。

PHP 中,

$book_total = 0;  // define variable outside loop
while($pp_info = mysqli_fetch_assoc($sqlpinfo)){
  $product_title = $pp_info['book_name'];
  $books_image = $pp_info['book_upload'];
  $books_price = $pp_info['book_price'];  
  $book_total += $books_price; // perform addition operation
}
echo "Book Total: $book_total";

希望它能帮助你:)

更改自

while($pp_info = mysqli_fetch_array($sqlpinfo)){
           $product_title = $pp_info['book_name'];
           $books_image = $pp_info['book_upload'];
           $books_price = array($pp_info['book_price']);
 }

$bookpricearray = array();
while($pp_info = mysqli_fetch_array($sqlpinfo)){
             $product_title = $pp_info['book_name'];
             $books_image = $pp_info['book_upload'];
             array_push($bookpricearray,$pp_info['book_price']);
 }
echo $total_price=array_sum($bookpricearray);

您可以通过$books_price[] = $pp_info['book_price'];将所有图书价格收集到一个数组$books_price数组中,然后在循环后计算其总和

$books_price = array();
while($pp_info = mysqli_fetch_array($sqlpinfo)){
       $product_title = $pp_info['book_name'];
       $books_image = $pp_info['book_upload'];
       $books_price[] = $pp_info['book_price'];
}
$sum = array_sum($books_price);
// For debug
var_dump($books_price)
echo $sum;