从xPath查询PHP中提取属性值

时间:2013-11-05 20:48:03

标签: php xml xpath

我是xPath和PHP的新手。我想从标签中提取属性值

<a onclick="sell_this_form('24042', '195'); return false;" href="javascript:void(0);">Sell</a>

我想提取sell_this_form的第一个参数,即24042.我已经构建了一个以这种方式结束的表达式

.../a/@onclick

它在我的Xpath表达式构建器上正确评估。但是当我使用var_dump()将结果转储到PHP中时,我得到一个空白节点。我怎么能让它给我我需要的东西?我试过了

$xpath->query("//input[@name]/@name")->value;

正如本网站所建议的那样。但是,我收到一个错误。我究竟做错了什么?我的代码的相关部分遵循

$dom = new DOMDocument;
$prev_err = libxml_use_internal_errors(TRUE);
$dom->loadHTML($page);
libxml_clear_errors();
libxml_use_internal_errors($prev_err);
$xpath = new DOMXPath($dom);
$entries = $xpath->query($xpathExpr);
//$entries = $xpath->query($xpathExpr)->value;
if (!$entries)
    throw new Exception("XPath evaluation error");

foreach ($entries as $entry)
    echo "<br/>value: {$entry->nodeValue}";

0 个答案:

没有答案