array_sum()期望参数1是数组

时间:2012-01-14 13:12:25

标签: php arrays

需要有人帮我解决以下问题。

在我的本地计算机上,我在Mac上运行MAMP。我有以下代码:

   $x=0;
   for ($i=0; $i<=30; $i++) {
       $VoteValue[$x] = $i;
       $x++;
   }

   $Total = array_sum($VoteValue);
   echo "<br /><br />Total Vote = $Total <br />";

上面的代码可以在本地计算机上正常运行。但是,当我将其上传到我的生产服务器时,我收到以下警告提示:

Warning: array_sum() expects parameter 1 to be array, null given in /home/RIP/public_html/RIPVote.php on line 7

由于警告错误,它不会返回并显示输出值。我怎么摆脱这个?

请建议并期待尽快收到你们的回复。感谢和感谢。

6 个答案:

答案 0 :(得分:5)

您是否尝试过使用

初始化$ VoteValue
$VoteValue = array();

总而言之,从0到n =(n *(n + 1))/ 2之和。

答案 1 :(得分:2)

嗯,很奇怪,我不知道代码中的错误是什么,但试试这个:

$VoteValue = array();
for ($i=0; $i<=30; $i++) {
           $VoteValue[] = $i;
       }

       $Total = array_sum($VoteValue);
       echo "<br /><br />Total Vote = $Total <br />";

答案 2 :(得分:2)

试试这个。希望能帮到你

$VoteValue = [];

for ($i=0; $i<=30; $i++) {
     array_push($VoteValue, $i);
}

$Total = array_sum($VoteValue);

echo "<br /><br />Total Vote = $Total <br />";

答案 3 :(得分:1)

我试过,在ubuntu11.04上用lampp。 没有错误。

  

总投票数= 465

也许是php的问题。

答案 4 :(得分:0)

<?php
       $VoteValue = range(0, 30);
       $Total = array_sum($VoteValue);
       echo "<br /><br />Total Vote = $Total <br />";
?>

您可以使用range()array_fill()

紧凑代码:

<?php echo '<br /><br />Total Vote = '.array_sum(range(0, 30)).' <br />'; ?>

答案 5 :(得分:-1)

警告:array_sum()期望参数1为数组,在第7行的/home/RIP/public_html/RIPVote.php中给出的值为空

请在for循环上定义数组 $ VoteValue = array();