创建一个数组然后将所有内容一起添加

时间:2013-06-05 09:54:14

标签: php mysql arrays expressionengine

我正在尝试将ExpressionEngine CMS中的信息导出到一个数组中,然后将数组的内容一起添加,我很确定我几乎就在那里,但是已经和代码争斗了一个小时!

这是代码,它从我的表中选择prize_points列,其中成员id是当前登录用户的id。然后它将与该成员相关联的prize_points拉出到一个数组中,我无法理解如何在最后将它们全部添加到一起。

$query = ee()->db->query("SELECT prize_points FROM exp_rmdy_member_prize_data WHERE member_id = '{member_id}'");

if ($query->num_rows() > 0)
{
    foreach($query->result_array() as $row)
    {
      // define claimed_total
      $current_prize_points = $row['prize_points'];
      $subtotal_prize_points = $current_prize_points + $row['prize_points'];
    }
    echo $subtotal_prize_points;

}

2 个答案:

答案 0 :(得分:1)

看起来你正试图这样做:

$subtotal_prize_points = 0;
$query = ee()->db->query("SELECT prize_points FROM exp_rmdy_member_prize_data WHERE member_id = '{member_id}'");
if($query->num_rows() > 0){
    foreach($query->result_array() as $row){
      // define claimed_total
      $subtotal_prize_points += $row['prize_points'];
    }
}
echo $subtotal_prize_points;

答案 1 :(得分:0)

我的猜测,你试图回应$ subtotal_prize_points而你没有

请参阅http://php.net/manual/en/language.variables.scope.php

如果你在for-each循环中定义了一些东西,你将无法使用它 循环的“外部”。你必须首先在循环外定义变量 修改它的值。