PHP不回显xpath返回的隐藏元素值

时间:2014-04-26 04:56:42

标签: php xpath

下面是我要抓取的表单元素:

<input id="form-c989bfc426f882cb8664a471c5e485e2" type="hidden" value="form-c989bfc426f882cb8664a471c5e485e2" name="form_build_id">

我的目标是获得价值form-c989bfc426f882cb8664a471c5e485e2 我使用下面的常用功能:

$x = my_curl_function($url); // the page where form has the hidden fields

$y = my_xpath_function($x);    

$z = $y->query("//input[starts-with(@id, 'form-')]");

我知道上面的函数工作正常,因为$z的长度不为零。如果我转储了$z的值,它会给我如下结果:

object(DOMNodeList)#5 (1) { ["length"]=> int(3) }

主要问题是我无法像往常一样回应价值:

if ($z->length > 0) {
    for ($i = 0; $i < $z->length; $i++) {
        echo $z->item($i)->nodeValue;   // should echo the results of $z
    }
}

可能是什么问题?是因为它是一个隐藏的领域?如果是这样的话,为什么它在转储它时有价值。它只是没有显示,我很困惑。

非常感谢任何帮助 - 谢谢。

0 个答案:

没有答案