使用简单XML元素查找以给定String开头的节点

时间:2016-06-01 11:41:09

标签: php simplexml

我有以下形式的xml

<?xml version="1.0" standalone="yes"?>
<root>
  <vehicle>
    <stockno>3C </stockno>
    <image1 />
    <image2 />
  </vehicle>
</root>

现在我想找到所有以字符串'image'开头的节点,我该怎么办?

以下是我尝试的代码

$xml = new XMLReader();
$xml->open('vehicle_274.xml');
while ($xml->read()){
    if (
        $xml->nodeType == XMLReader::ELEMENT && 
        $xml->name == 'vehicle'
    ){
        $node = new SimpleXMLElement($xml->readOuterXML());
        $result = $node->xpath("//image");
        print_r(count($result));
    }
}

此代码需要图片代码,而不是搜索以'image'开头的代码

1 个答案:

答案 0 :(得分:2)

找到你的要求。要查找名称以image开头的标记,请执行以下操作:

//*[starts-with(name(), "image")]