📜  如何使用 php 获取 xml 中的属性值(1)

📅  最后修改于: 2023-12-03 15:23:56.993000             🧑  作者: Mango

如何使用 PHP 获取 XML 中的属性值

在 PHP 中,我们可以使用 SimpleXML 模块来解析并操作 XML 数据。当我们需要获取 XML 元素中的属性值时,可以使用 SimpleXML 提供的属性访问方法。

获取单个元素中的属性值

让我们假设有以下的 XML 数据:

<bookstore>
  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J.K. Rowling</author>
    <price>29.99</price>
  </book>
</bookstore>

我们可以用以下 PHP 代码获取 <book> 元素中的 category 属性值:

$xml = simplexml_load_string($xmlString);
$category = $xml->book['category'];
echo $category; // 输出 "children"
获取多个元素中的属性值

假设有以下的 XML 数据:

<bookstore>
  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J.K. Rowling</author>
    <price>29.99</price>
  </book>
  <book category="fiction">
    <title lang="en">The Great Gatsby</title>
    <author>F. Scott Fitzgerald</author>
    <price>14.99</price>
  </book>
</bookstore>

我们可以使用 SimpleXML 的方法获取所有 <book> 元素的 category 属性值:

$xml = simplexml_load_string($xmlString);
$bookCategories = array();
foreach ($xml->book as $book) {
    $bookCategories[] = (string)$book['category'];
}
print_r($bookCategories); // 输出 Array ( [0] => children [1] => fiction )

我们可以使用 foreach 循环遍历所有的 <book> 元素,并且把它们的 category 属性值添加到一个数组中。

结论

以上就是使用 PHP 获取 XML 中的属性值的方法。在使用 SimpleXML 操作 XML 数据时,我们需要熟练掌握 SimpleXML 提供的方法和属性,以便高效地解析 XML 数据。