array_merge() [function.array-merge]: Argument #1 is not an array in ……错误的解决办法

用合并数组函数array_merge()时出错了。
array_merge() [function.array-merge]: Argument #1 is not an arrayin

我出错的是在这个函数。
function build_uri($app, $params, $append = '', $page = 0, $keywords = '', $size = 0)
{
    static $rewrite = NULL;

    if ($rewrite === NULL)
    {
        $rewrite = intval($GLOBALS['_CFG']['rewrite']);
    }

    $args = array('cid'   => 0,
                  'gid'   => 0,
                  'bid'   => 0,
                  'acid'  => 0,
                  'aid'   => 0,
                  'sid'   => 0,
                  'gbid'  => 0,
                  'auid'  => 0,
                  'sort'  => '',
                  'order' => '',
                );
    extract(array_merge($args, $params));

出错显示,参数不是数组。
猜测用$params可能传过来的参数可能是空值,所有返回的值就不是数组了,知道原因就很容易了,既然不是数组,那我就给你转成数组。
解决后的函数:
extract(array_merge((array)$args, (array)$params));

转载于:https://www.cnblogs.com/MRPUNK/archive/2011/11/04/3849314.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值