Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算数组中所有元素的问题_Php_Mysql_Arrays - Fatal编程技术网

Php 计算数组中所有元素的问题

Php 计算数组中所有元素的问题,php,mysql,arrays,Php,Mysql,Arrays,这不起作用,我想计算所有元素的总和,但我得到以下错误: 警告:数组_sum()需要参数 1是数组,字符串在 C:\xampp\htdocs\falco\classes\controller.php 在线303 知道如何计算来自mysql的所有元素吗 感谢您的时间和帮助。试试这个: $query = $db->query("SELECT * FROM orders"); while ($row = mysql_fetch_array($query)) { $cost= array_

这不起作用,我想计算所有元素的总和,但我得到以下错误:

警告:数组_sum()需要参数 1是数组,字符串在 C:\xampp\htdocs\falco\classes\controller.php 在线303

知道如何计算来自mysql的所有元素吗

感谢您的时间和帮助。

试试这个:

$query = $db->query("SELECT * FROM orders");

while ($row = mysql_fetch_array($query)) {
    $cost= array_sum($row['cost']);
}
或者从mysql:

$query = $db->query("SELECT * FROM orders");
$cost = 0;
while ($row = mysql_fetch_array($query)) {
    $cost += $row['cost'];
}
试试这个:

$query = $db->query("SELECT * FROM orders");

while ($row = mysql_fetch_array($query)) {
    $cost= array_sum($row['cost']);
}
或者从mysql:

$query = $db->query("SELECT * FROM orders");
$cost = 0;
while ($row = mysql_fetch_array($query)) {
    $cost += $row['cost'];
}

为什么不让MYSQL来处理呢


$query=$db->query(“选择订单。*,将(成本)总和作为订单的总成本”)

为什么不让MYSQL来处理呢


$query=$db->query(“选择订单。*,将(成本)总和作为订单的总成本”)

如果只是一笔你想要的金额,你可以让数据库帮你做:

$query = $db->query("SELECT sum(`cost`) as `cost` FROM orders");
while ($row = mysql_fetch_array($query)) {
    $cost = $row['cost'];
}

如果只是您想要的金额,您可以让数据库为您完成:

$query = $db->query("SELECT sum(`cost`) as `cost` FROM orders");
while ($row = mysql_fetch_array($query)) {
    $cost = $row['cost'];
}
这应该起作用:

 Select sum(cost) from orders
甚至更好

$query = $db->query("SELECT * FROM orders");

$cost = 0;
while ($row = mysql_fetch_array($query)) {
    $cost += $row['cost'];
}
这应该起作用:

 Select sum(cost) from orders
甚至更好

$query = $db->query("SELECT * FROM orders");

$cost = 0;
while ($row = mysql_fetch_array($query)) {
    $cost += $row['cost'];
}

真的,听起来你只是想要总数

$query = $db->query("SELECT SUM(cost) FROM orders");
list($cost) = mysql_fetch_row($query);

真的,听起来你只是想要总数

$query = $db->query("SELECT SUM(cost) FROM orders");
list($cost) = mysql_fetch_row($query);

解决方案引发错误的原因是,$row似乎是一个数组(包含表中的一行),而$row['cost']是一个值。此外,您正在尝试对一行求和,因此结果将是字段
cost
的值。下面提供的答案是合理的选项,特别是
select sum(cost)from foo…
mysql语句解决方案引发错误的原因是$row似乎是一个数组(包含表中的一行),而$row['cost']是一个值。此外,您正在尝试对一行求和,因此结果将是字段
cost
的值。下面提供的答案是合理的选择,特别是
selectsum(cost)from foo…
mysql语句