PHP 警告:为 foreach() 提供的参数无效,但 XML 对象看起来不错
PHP Warning: Invalid argument supplied for foreach() but XML object looks fine
我创建了一个 SimpleXMLElement 如下:
$catSearchXml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?>'.$categoryContainer);
当我尝试使用以下方法循环取值时:
foreach ( $catSearchXML->categoryHistogram as $searchCategory )
我收到以下错误:
PHP Warning: Invalid argument supplied for foreach()
当我执行 var_dump($catSearchXml)
时,我得到以下信息:
object(SimpleXMLElement)#18 (1) {
["categoryHistogram"]=> array(3) {
[0]=> object(SimpleXMLElement)#26 (4) {
["categoryId"]=> string(3) "293"
["categoryName"]=> string(14) "Sound & Vision"
["count"]=> string(3) "123"
["childCategoryHistogram"]=> array(8) {
[0]=> object(SimpleXMLElement)#6 (3) {
["categoryId"]=> string(5) "14969"
["categoryName"]=> string(27) "Home Audio & HiFi Separates"
["count"]=> string(2) "89"
}
[1]=> etc...
当我检查 is_array($catSearchXml->categoryHistogram)
时,它等于 false
下面returns什么都没有:$catSearchXML->categoryHistogram[0]->categoryName
我有什么想法吗???
提前致谢。
你会在这里踢自己,但你已经定义了 $catSearchXml
,你正试图循环 $catSearchXML
。 PHP变量名区分大小写。
我创建了一个 SimpleXMLElement 如下:
$catSearchXml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?>'.$categoryContainer);
当我尝试使用以下方法循环取值时:
foreach ( $catSearchXML->categoryHistogram as $searchCategory )
我收到以下错误:
PHP Warning: Invalid argument supplied for foreach()
当我执行 var_dump($catSearchXml)
时,我得到以下信息:
object(SimpleXMLElement)#18 (1) {
["categoryHistogram"]=> array(3) {
[0]=> object(SimpleXMLElement)#26 (4) {
["categoryId"]=> string(3) "293"
["categoryName"]=> string(14) "Sound & Vision"
["count"]=> string(3) "123"
["childCategoryHistogram"]=> array(8) {
[0]=> object(SimpleXMLElement)#6 (3) {
["categoryId"]=> string(5) "14969"
["categoryName"]=> string(27) "Home Audio & HiFi Separates"
["count"]=> string(2) "89"
}
[1]=> etc...
当我检查 is_array($catSearchXml->categoryHistogram)
时,它等于 false
下面returns什么都没有:$catSearchXML->categoryHistogram[0]->categoryName
我有什么想法吗???
提前致谢。
你会在这里踢自己,但你已经定义了 $catSearchXml
,你正试图循环 $catSearchXML
。 PHP变量名区分大小写。