使用DOMXPath提取隐藏输入元素的属性值

mon*_*on1 4 php xml xpath dom

我有一段HTML代码:

<form method="post" action="/">
  <input type="hidden" name="example-name" value="example-value">
  <button type="submit">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)

如何在PHP中使用DOMXPath提取隐藏输入的值?我试过像这样的事情:

//$site - the html code
$doc = new DOMDocument();
$doc->loadHTML($site);
$xpath = new DOMXpath($doc);

$kod = $xpath->query("//input[@name='example-name']");
foreach($kod as $node)
$values[]=$node->nodeValue;
return $values;
Run Code Online (Sandbox Code Playgroud)

但它返回一个空数组.哪里出错了?

Gor*_*don 7

尝试使用此方法获得value的属性input元素与name属性的例子名

'//input[@name="example-name"]/@value'
Run Code Online (Sandbox Code Playgroud)

结果

Array
(
    [0] => example-value
)
Run Code Online (Sandbox Code Playgroud)

您的XPath没有选择属性轴(我认为这就是它的名称),但文本轴和输入没有文本,数组中的值为空.它确实找到了元素.