0

我有一个 XML 文件,如下所示:

<time>13:12</time>
    <date>02/15/13 </date>
    <image1 src="path/to/image.jpeg" height="180" width="144" style="border-color: #800000" border="1" />

我对所有常规节点(例如“时间”和“日期”)使用 xpath 没有问题,但我被困在使用什么表达式来提取“image1 src”。

如果我将 src 添加到它,这也不起作用。

$items = $xml->xpath('/*image1');

任何帮助将非常感激。

4

2 回答 2

1

你可以试试这个:

$items = $xml->xpath('//image1/@src');
于 2013-02-17T17:24:12.087 回答
0

你也可以试试这个逻辑。

set serveroutput on
Declare
xl clob := '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<time>13:12</time>
<date>02/15/13 </date>
<image1 src="path/to/image.jpeg" height="180" width="144" style="border-color:#800000" border="1" />   
</soapenv:Body>
</soapenv:Envelope>';

v_parser Xmlparser.Parser;
v_doc    XMLDOM.DOMDocument;
v_nodeList      XMLDOM.DOMNodeList;
v_attribute    varchar2(300);

Begin
v_parser := Xmlparser.newParser;
xmlparser.setValidationMode(v_parser, TRUE);
Xmlparser.parseClob(v_parser, xl);

v_doc := Xmlparser.getDocument(v_parser);
v_nodeList  := xslprocessor.selectNodes(XMLDOM.makeNode(v_doc), '//image1');
v_attribute := XMLDOM.getAttribute((XMLDOM.makeElement(XMLDOM.item(v_nodeList, 0))), 'src');

dbms_output.put_line(v_attribute);
End;

输出: 路径/到/image.jpeg

于 2013-02-17T18:10:35.037 回答