欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

simpleXML object里面不能读出数据怎么处理

程序员文章站 2024-01-25 16:31:04
...
simpleXML object里面不能读出数据怎么办?
本帖最后由 joebnb 于 2014-02-26 11:01:22 编辑
class just{
function xmlInclude($data){
$xml = simplexml_load_file(dirname(__FILE__).'/jump.xml');
foreach($xml->Keyword->xpath("//*[data='$data']") as $item){
return $item;
}
}
}
$TR = new just;
$cr = $TR->xmlInclude(查询);
print_r($cr);
$cr=(array)$cr;
echo '
';
print_r($cr);

写了一个simplexml解析,print_r发现它出来的是simpleXML object不是数组
SimpleXMLElement Object ( [data] => 查询 [page] => Array ( [0] => dbcon.php [1] => select.php [2] => footer.php ) ) 
Array ( [data] => 查询 [page] => Array ( [0] => dbcon.php [1] => select.php [2] => footer.php ) )

里面的数值怎么提取,百度上的答案都是转换为数组,我也试着这么做了
可是出来后
echo $cr[0].$cr[0][0].$cr[1][0]

都不能获取到数值并提示:
Notice: Undefined offset: 0 in D:\Program files\WEB Edit\phpLight2013\WWW\Core\xml.php on line 23
Notice: Undefined offset: 0 in D:\Program files\WEB Edit\phpLight2013\WWW\Core\xml.php on line 23

请问怎么样才能从simplexml obj里直接取值?像这种数组中还有数组的情况如何取值?
------解决方案--------------------
$cr = $TR->xmlInclude(查询);
$cr=(array)$cr;
echo $cr['data'];
echo $cr['page'][1];

注意:$cr=(array)$cr; 只是将第一层对象转换成了数组
simpleXML object里面不能读出数据怎么处理

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • simpleXML object里面不能读出数据怎么处理
  • 专题推荐