在使用XML时出现Warning:Illegal offset type

今天在写一个小程序的时候发现一个问题:
$attr = $v->attributes();
$id = $attr['id'];
$oldprice = $attr['oldprice'];
$oldamount= $attr['oldamount'];
$oldlevel = $attr['oldlevel'];
$url = $attr['url'];
 $rs = checknew($url);
if($rs['price'] != $oldprice || ($rs['amount'] != $oldamount) || ($rs['level'] != $oldlevel)){
     $arrt['newprice'] = $rs['price'];
     $arrt['newamount'] = $rs['amount'];
     $arrt['newlevel'] = $rs['level'];
     $diff[$id] = $rs;
}

这样用谁能看出来它有问题??

想了又想,看了又看,就是不知道那里有问题。

于是打印出来:Warning: Illegal offset type in 是这样的信息,但这一行指向的是 $diff[$id] = $rs;但也没有错呀。

接着把$id 然後 var_dump($name) 來看看, 是 Object 的結構如下:

object(SimpleXMLElement)#9 (1) {
[0]=>
string(5) "title"
}

于是,又把$id = $attr['id'];改成 $id = $attr['id'][0];还是无济于世,但感觉上面var_dump出来的怪怪的,于是想用intval试下,其它相应的也用strval,晕,成功了,汗,什么玩意。

弄不清楚,先记在这里吧
300*300
 文章首页关于迷茫时代关于我写意人生
版权所有:迷茫时代 All rights reserved   
执行时间:0.00797 秒