程序之前应该是php4 现在服务器上php5出错了​Warning: array_sum() [function.array-sum]: The argument should be an array ​
大概知道是array_sum这函数出了问题,但现在不知道怎么改
​错误代码如下$ds_y = double_format(array_sum($arr_ds['y']));
$ds_s = double_format(array_sum($arr_ds['s']));
$ds_qx = double_format(array_sum($arr_ds['qx']));
$cg_y = double_format(array_sum($arr_cg['y']));
$cg_s = double_format(array_sum($arr_cg['s']));
$cg_qx = double_format(array_sum($arr_cg['qx']));
​​请哪位好心的朋友教教,我是新人,对php只有基本上的了解,编辑方面基本为零 这个怎么改才能正常呢

解决方案 »

  1.   

    <?php
    }

    $ds_y = double_format(array_sum($arr_ds['y']));
    $ds_s = double_format(array_sum($arr_ds['s']));
    $ds_qx = double_format(array_sum($arr_ds['qx']));
    $cg_y = double_format(array_sum($arr_cg['y']));
    $cg_s = double_format(array_sum($arr_cg['s']));
    $cg_qx = double_format(array_sum($arr_cg['qx']));
    $ck = double_format(array_sum($arr_ck));
    $hk = double_format(array_sum($arr_hk));
    $qk = double_format(array_sum($arr_qk));
    $yk = double_format($ds_y-$ds_s+$cg_y-$cg_s+$cp_win_z+$lotto_z);
    ?>
      

  2.   

    打印下$arr_ds和$arr_cg
      

  3.   

    Warning: array_sum() [function.array-sum]: The argument should be an array ​
    array_sum 的参数应该是一个数组
      

  4.   

    在你贴出的代码前,加上这个
    echo "<pre>";
    print_r($arr_ds);
    print_r($arr_cg);
    exit;
      

  5.   


    恩,但是这我要怎么修改才可以呢
    结果出来了Array
    (
    )
    Array
    (
    )
     
    接下来我怎么修改呢
      

  6.   

    你提示这个错误码? Notice: Undefined index: y 
      

  7.   

    加一步判断比如array_sum(is_array($arr_ds['y'])?$arr_ds['y']:array());
    不行你就用if
      

  8.   

    if语句怎么改啊,我刚刚用你这个方式改过后还是出错Parse error: parse error, unexpected ';'
      

  9.   

    没一个外面都加
    if(!empty($arr_ds['y'])){
    $ds_y = double_format(array_sum($arr_ds['y']));
    }
      

  10.   

    The argument should be an array ​参数必须是数组。就是这个意思。检查出入的参数