沃梦达 / 编程问答 / php问题 / 正文

SimpleXML-无法获取第一个标记的属性

SimpleXML - Cannot get attributes of first tag(SimpleXML-无法获取第一个标记的属性)

本文介绍了SimpleXML-无法获取第一个标记的属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试读取XML的第一个标记的属性。 以下是XML结构

<myxml timestamp="1301467801">
    <tag1>value1</tag1>
    <tag2>value2</tag2>
    …
</myxml>

下面是我尝试获取时间戳属性的方法(尝试了两种方法,都在这里列出,都不起作用)

$timestamp = $xml->myxml->attributes()->timestamp; //gives Node no longer exists warning
if($xml->myxml && $xml->myxml->attributes()){ //Doesn't enter this loop
    $arr = $xml->myxml->attributes();
    $timestamp = $arr['timestamp'];
}

有人能告诉我如何获取属性值吗?谢谢。

推荐答案

是因为$xml实际上指向根元素。正确用法应为:

$timestamp = $xml->attributes()->timestamp;

这篇关于SimpleXML-无法获取第一个标记的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:SimpleXML-无法获取第一个标记的属性

基础教程推荐