使用PHP访问XML中元素的值

使用PHP访问XML中元素的值,php,xml,xpath,Php,Xml,Xpath,我正在尝试访问包含以下内容的xml文件 <?xml version="1.0" encoding="UTF-8"?> <descriptions> <image> <name>1.jpg</name> <text>Investor Return</text> </image> </descriptions> 1.jpg 投资者回报 如何检索“nam

我正在尝试访问包含以下内容的xml文件

<?xml version="1.0" encoding="UTF-8"?>
<descriptions> 
  <image> 
    <name>1.jpg</name>  
    <text>Investor Return</text> 
  </image> 
</descriptions>

1.jpg
投资者回报
如何检索“name”=1.jpg的“text”值?我曾尝试使用
$desc=$xml->xpath('image[name=“”.$file.']/text')
但它给出了一个包含单个simplexmlelement(无值)的数组。有人能提出解决办法吗

谢谢


Sachin

尝试使用
//image
而不仅仅是
image
(尽管您最初的XPath也适用于我,请参见演示):


谢谢我会试试这个。实际上,我有多个图像,因此可能需要循环浏览它们。
$raw = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<descriptions> 
  <image> 
    <name>1.jpg</name>  
    <text>Investor Return</text> 
  </image> 
</descriptions>
XML;
$file = "1.jpg";
$xml = simplexml_load_string($raw);
$result = $xml->xpath('//image[name="'.$file.'"]/text');
echo $result[0];
Investor Return