访问XML数据:相同的元素名称,但按属性区分

时间:2016-06-03 08:39:46

标签: xml attributes

我有一个包含英语和德语字符串的多语言XML文件,这些字符串具有相同的元素名称type,但是通过lang属性彼此区分。

<?xml version="1.0" encoding="utf-8"?>
<project>
  <type lang="en">package design</type>
  <type lang="de">verpackung</type>
</project>

如何单独访问这些信息?

$xml->type;回显第一个type元素的内容。

1 个答案:

答案 0 :(得分:1)

在XML中,有多种方法可以获取所需的节点。您可以遍历最里面的父节点,也可以创建xpath并进行相应的解析。

<type lang="de">verpackung</type>

假设您必须获取与德语相关的文本内容,

xpath:project / type [@ lang =“en”] 这会直接将您带到所需的节点。

您也可以使用jaxb。