【发布时间】:2013-04-14 20:10:22
【问题描述】:
我有这个:
Array (
[0] => Array ( [f_count] => 1 [uid] => 105 )
[1] => Array ( [f_count] => 0 [uid] => 106 )
[2] => Array ( [f_count] => 2 [uid] => 107 )
[3] => Array ( [f_count] => 0 [uid] => 108 )
[4] => Array ( [f_count] => 1 [uid] => 109 )
[5] => Array ( [f_count] => 0 [uid] => 110 )
[6] => Array ( [f_count] => 3 [uid] => 111 )
)
我需要的是:7",这是f_count列的总和。
我已经尝试了几个小时来解决这个问题。我认为array_sum() 会起作用,但不适用于多维数组。因此,我尝试弄清楚如何通过unset() 或拼接或其他任何方式隔离f_counts,但每个解决方案似乎都涉及foreach 循环。我已经搞砸了array_map、array_walk 和其他人无济于事。我还没有找到适用于多维数组的函数。
我正在运行 PHP 5.4。
有人可以告诉我如何在没有foreach 循环的情况下对该列求和吗?
如果有帮助,f_count 的值将永远不会高于 100,uid 的值将始终大于 100。
或者,如果有办法以不同的方式运行我的查询以使数组不是多维的,那显然也可以。
$query = "SELECT f_count, uid FROM users WHERE gid=:gid";
...
$array = $stmt->fetchAll();
我正在使用 PDO。
【问题讨论】:
-
如果没有循环,您将无法对数组执行任何操作。为什么这么反感?
标签: php mysql arrays multidimensional-array