我正在寻找一种将多维数组输出为简单表的方法。
我通过http://google.com/complete/search?output=toolbar&q=adam
使用简单函数处理此处可用的xml 得到它
function convertXmlObjToArr($obj) {
$json = json_encode($obj);
$array = json_decode($json,TRUE);
return $array;
}
并得到了一个数组
array(1){ ["CompleteSuggestion"]=>
array(10) {
[0]=>
array(1) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(12) "adam sandler"
}
}
}
[1]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(11) "adam levine"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "33200000"
}
}
}
[2]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(12) "adam carolla"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(7) "5570000"
}
}
}
[3]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(12) "adam lambert"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "45400000"
}
}
}
[4]=>
array(1) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(17) "adam sandler died"
}
}
}
[5]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(19) "adam sandler movies"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "43600000"
}
}
}
[6]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(13) "adam morrison"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "13800000"
}
}
}
[7]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(10) "adams golf"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "30500000"
}
}
}
[8]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(10) "adam yauch"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(8) "19700000"
}
}
}
[9]=>
array(2) {
["suggestion"]=>
array(1) {
["@attributes"]=>
array(1) {
["data"]=>
string(9) "adam west"
}
}
["num_queries"]=>
array(1) {
["@attributes"]=>
array(1) {
["int"]=>
string(9) "137000000"
}
}
}
}
}
现在我想输出它并面临两个问题:
- 我如何“挖掘”这样结构的数组中的相关信息(“数据”和“整数”)?到目前为止,我正在处理更简单的数组(不是那么“深”)。我正在尝试通过 foreach 循环
foreach($googleKeywords->CompleteSuggestion 作为 $suggestion){
echo"{$this->suggestion->data}";
}
但不断收到“尝试获取非对象的属性”错误。
- 正如您注意到的一些数据不完整 - “数据”中有一个名称但没有对应的“int”......是否有办法回显“无数据”是否未设置“int”?
一切顺利,
亚当