Php 简单数组和不起作用

Php 简单数组和不起作用,php,Php,echo阵列_sum$价格;返回0为什么?您的示例数组没有可能来自数组合并的连续索引。你试过先做一个数组吗 如果您发布的数组是您的代码正在处理的实际数组,我看不出有任何问题 echo array_sum(array_values($prices)); 上面的代码给我的总数是1280 此外,数组索引不需要是连续的: $prices = array ( '0' => 45 ,'1' => 80 ,'2' => 60 ,'3' => 40 ,'4' => 37 ,'5'

echo阵列_sum$价格;返回0为什么?

您的示例数组没有可能来自数组合并的连续索引。你试过先做一个数组吗


如果您发布的数组是您的代码正在处理的实际数组,我看不出有任何问题

echo array_sum(array_values($prices));
上面的代码给我的总数是1280

此外,数组索引不需要是连续的:

$prices = array ( '0' => 45 ,'1' => 80 ,'2' => 60 ,'3' => 40 ,'4' => 37 ,'5' => 69 ,'6' => 34 ,'7' => 79 ,'8' => 46 ,'9' => 91 ,'10' => 269 ,'11' => 59 ,'12' => 60 ,'13' => 79 ,'14' => 35 ,'15' => 67 ,'16' => 85 ,'17' => 45 );

var_dump( $prices );

echo array_sum( $prices );
上面的代码也给了我一个1280的总数

我没有发现您在下面的评论中发布的阵列有任何问题:

$prices = array ( '100' => 45 ,'90' => 80 ,'80' => 60 ,'70' => 40 ,'4' => 37 ,'5' => 69 ,'6' => 34 ,'7' => 79 ,'8' => 46 ,'9' => 91 ,'10' => 269 ,'11' => 59 ,'12' => 60 ,'13' => 79 ,'14' => 35 ,'15' => 67 ,'16' => 85 ,'17' => 45 );

var_dump( $prices );

echo array_sum( $prices );

这得出的总数为1148。

似乎数组_值也会返回0@zumbamusic那么你的数组看起来就不像你在问题中发布的那样了。@Evert数组[0]=>37[1]=>45[2]=>34[3]=>48[4]=>60[5]=>40[6]=>30[7]=>50[8]=>80[9]=>69[10]=>42[11]=>56[12]=>59[13]=>108[14]=>41[15]=>91[16]=>34[17]=>95刚用过的打印价格;如果这是真的,那么print_rarray_值$prices;不能返回0。@尽管是,但我们的回答var_dump表明它不是INT,而是字符串值。我猜必须以某种方式转换它18{[0]=>String3945[1]=>String3940[2]=>String3985[3]=>String3946[4]=>String3969[5]=>String3934[6]=>String3960[7]=>String3991[8]=>String3986[9]=>String3948[10]=>String3970[11]=>String3980[12]=>String3942[13]=>String3967[14]=>String108[15]>String3937[16]=>string39 45[17]=>string39 95}0 var_dump将为数组返回INT,但为Mine返回字符串您的问题似乎在其他地方。上面的数组也给了我一个总数1148。array_merge可以合并一个或多个数组。您确定prices2[0]是一个数组吗?否则,您可能需要尝试$prices=array\u merge$prices,$prices2$prices2[0]从我的问题中的函数返回,据我所知,基本上是preg_match_all返回数组。而且$prices是手动设置的数组,我仍然不明白为什么它不起作用—有些东西不正确—您可能希望通过执行var_dump$prices2;来确保。这是一个不起作用的工作示例。所有支持我已经尝试过的简单解决方案的聪明人都不要把这当回事!
$prices = array ( '0' => 45 ,'1' => 80 ,'2' => 60 ,'3' => 40 ,'4' => 37 ,'5' => 69 ,'6' => 34 ,'7' => 79 ,'8' => 46 ,'9' => 91 ,'10' => 269 ,'11' => 59 ,'12' => 60 ,'13' => 79 ,'14' => 35 ,'15' => 67 ,'16' => 85 ,'17' => 45 );

var_dump( $prices );

echo array_sum( $prices );
$prices = array ( '100' => 45 ,'90' => 80 ,'80' => 60 ,'70' => 40 ,'4' => 37 ,'5' => 69 ,'6' => 34 ,'7' => 79 ,'8' => 46 ,'9' => 91 ,'10' => 269 ,'11' => 59 ,'12' => 60 ,'13' => 79 ,'14' => 35 ,'15' => 67 ,'16' => 85 ,'17' => 45 );

var_dump( $prices );

echo array_sum( $prices );
$prices = array( 0 => "45" ,1 => "40" ,2 => "85" ,3 => "46" ,4 => "69" ,5 => "34" ,6=> "60" ,7=> "91" ,8=> "86" ,9=> "48" ,10=> "70" ,11=> "80" ,12=> "42" ,13=> "67" ,14=> "108" ,15=> "37" ,16=> "45" ,17=> "95" );

var_dump( $prices );

echo array_sum( $prices );