提取输入隐藏 DOMXpath 的值 php

Extract value of a input hidden DOMXpath php

我需要使用 xpath 获取属性 value,我尝试了几次但总是得到 null.

这是我的 html 代码:

<input type="hidden" id="Lat" name="myMap" value="22.445575, -18.722164">

php中的代码:

$val= $xpath->query('//input[@type="hidden" and @name="myMap"]/@value' );

$list=array();              

    foreach($val as $v){
       $list[]=$v->nodeValue;
      }

var_dump($list);
$sValue= (string)$val[0];

备注:

我使用 PHP 简单 HTML DOM 解析器为您找到解决方案:

别忘了下载这个库: http://simplehtmldom.sourceforge.net/

include("simple_html_dom.php");
$html=str_get_html('<input type="hidden" id="Lat" name="myMap" value="22.445575, -18.722164">');
$input_val=$html->find('input[type=hidden],[name=myMap]',0)->getAttribute("value");
echo $input_val;

如果您想从 url 获取 html 将 str_get_html 更改为 file_get_html :

$html=file_get_html("http://www.example.com/page");

这是您使用 DOM xpath 的代码:

$html='<input type="hidden" id="Lat" name="myMap" value="22.445575, -18.722164">';
$doc = new DOMDocument;
$doc->loadHTML($html);
$xpath = new DOMXpath($doc);
$val= $xpath->query('//input[@type="hidden" and @name = "myMap"]/@value' );
$list=array();              
    foreach($val as $v){
       $list[]=$v->nodeValue;
      }
var_dump($list);