$dagen = array(
'Mon' => 'Maandag',
'Tue' => 'Dinsdag',
'Wed' => 'Woensdag',
'Thu' => 'Donderdag',
'Fri' => 'Vrijdag',
'Sat' => 'Zaterdag',
'Sun' => 'Zondag'
);
foreach ($xml->verwachtingen->verwachting as $verwachting) {
$graden = $verwachting->maxtempGRC - $verwachting->mintempGRC;
$graden = $graden / 2;
$graden = $graden + $verwachting->mintempGRC;
$dag = $verwachting->dagvdweek;
echo 'Op '. $dagen[$dag] .' wordt het '. $graden .' graden';
}
$ xml是使用SimpleXMLElement加载的XML文档。
现在,请帮帮我。当我回显$dag
时,它显示'周五',因为它是星期五。所以我试着将日期的英语单词转换成我的语言(荷兰语)。但它似乎没有用,因为我得到了这个:
Warning: Illegal offset type in C:\data\home\www\awnl-xml\index.php on line 21 Op wordt het 18.5 graden Warning: Illegal offset type in C:\data\home\www\awnl-xml\index.php on line 21 Op wordt het 18 graden Warning: Illegal offset type in C:\data\home\www\awnl-xml\index.php on line 21 ...
有人知道我为什么会收到此错误吗?感谢。
答案 0 :(得分:4)
$dag
将是SimpleXMLElement
类型的对象。不允许将对象用于数组键,这就是您收到“非法偏移类型”警告的原因。
在使用之前,必须首先将对象强制转换为合适的类型,在您的情况下,它应该是一个字符串。
$dag = (string) $verwachting->dagvdweek;