Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中获取XML元素中的属性值?_Php_Xml - Fatal编程技术网

如何在PHP中获取XML元素中的属性值?

如何在PHP中获取XML元素中的属性值?,php,xml,Php,Xml,如何获取XML元素中属性的值 例如: 我想获取属性类别的值 <bookstore> <book category="cooking"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00&

如何获取XML元素中属性的值

例如: 我想获取属性类别的值

<bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>

日常意大利语
吉娅达·德·劳伦蒂斯
2005
30
使用扩展名:

<?php
$xml = '<bookstore>
<book category="cooking">
  <title lang="en">Everyday Italian</title>
  <author>Giada De Laurentiis</author>
  <year>2005</year>
  <price>30.00</price>
</book>
</bookstore>';
$doc = simplexml_load_string($xml);
echo $doc->book->attributes()->category; // cooking
echo $doc->book->title.PHP_EOL; // Everyday Italian
echo $doc->book->title->attributes()->lang.PHP_EOL; // en

PHP在标准库中提供了一个可用于解析XML文件的
SimpleXML

$data = <<<END
  <bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
</bookstore>
END;


$xml = simplexml_load_string($data); 
$categoryAttributes = $xml->xpath('/bookstore/book/@category');
echo $categoryAttributes[0];
$data=可以做到这一点。
$data = <<<END
  <bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
</bookstore>
END;


$xml = simplexml_load_string($data); 
$categoryAttributes = $xml->xpath('/bookstore/book/@category');
echo $categoryAttributes[0];