首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从SimpleXML访问@attribute

从SimpleXML访问@attribute
EN

Stack Overflow用户
提问于 2009-10-31 04:31:23
回答 10查看 153.9K关注 0票数 132

访问我的SimpleXML对象的@attribute部分时遇到问题。当我var_dump整个对象时,我得到了正确的输出,当我var_dump对象的其余部分(嵌套标记)时,我得到了正确的输出,但是当我遵循文档和var_dump $xml->OFFICE->{'@attributes'}时,我得到了一个空对象,尽管第一个var_dump清楚地表明有要输出的属性。

有人知道我在这里做错了什么吗/我如何才能做到这一点?

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-10-31 04:37:35

您可以通过调用XML节点上的attributes()函数来获取XML元素的属性。然后,您可以var_dump函数的返回值。

有关更多信息,请访问php.net http://php.net/simplexmlelement.attributes

来自该页面的示例代码:

代码语言:javascript
运行
复制
$xml = simplexml_load_string($string);
foreach($xml->foo[0]->attributes() as $a => $b) {
    echo $a,'="',$b,"\"\n";
}
票数 93
EN

Stack Overflow用户

发布于 2012-09-26 18:57:48

尝尝这个

代码语言:javascript
运行
复制
$xml->attributes()->Token
票数 143
EN

Stack Overflow用户

发布于 2013-09-04 22:45:39

我以前使用过很多次来获取@attributes,就像下面这样,而且它有点长。

代码语言:javascript
运行
复制
$att = $xml->attributes();
echo $att['field'];

它应该更简单,并且你可以一次只获取以下格式的属性:

标准方式-数组-访问属性(AAA)

代码语言:javascript
运行
复制
$xml['field'];

其他替代方案包括:

右键快速格式化(&Q)

代码语言:javascript
运行
复制
$xml->attributes()->{'field'};

格式错误

代码语言:javascript
运行
复制
$xml->attributes()->field;
$xml->{"@attributes"}->field;
$xml->attributes('field');
$xml->attributes()['field'];
$xml->attributes->['field'];
票数 62
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1652128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档