访问SimpleXML对象的@attribute
部分时遇到问题。 当我var_dump
整个对象时,我得到了正确的输出,当我var_dump
对象的其余部分(嵌套标记)时,我得到了正确的输出,但是当我跟踪文档和var_dump
$XML->office->{'@attributes'}
时,我得到了一个空对象,尽管第一个var_dump
清楚地显示了要输出的属性。
有谁知道我做错了什么/我怎么做?
您可以通过调用XML节点上的attributes()函数来获取XML元素的属性。 然后可以var_dump函数的返回值。
有关更多信息,请访问php.net http://php.net/simplexmlelement.attributes
页面中示例代码:
$xml = simplexml_load_string($string);
foreach($xml->foo[0]->attributes() as $a => $b) {
echo $a,'="',$b,"\"\n";
}
试试这个
$xml->attributes()->Token
我以前用过很多次获取@attributes
,就像下面这样,它有点长。
$att = $xml->attributes();
echo $att['field'];
它应该更容易,您可以一次性获得以下格式的属性:
$xml['field'];
其他备选方案有:
$xml->attributes()->{'field'};
$xml->attributes()->field;
$xml->{"@attributes"}->field;
$xml->attributes('field');
$xml->attributes()['field'];
$xml->attributes->['field'];