在隐藏的表单输入中提取字符串php的一部分
问题描述:
I accessed a page using php curl that has a form with default values inside hidden inputs, lets say
<input type="hidden" name="foo" value="barbazz">
How do I get the value barbazz
, using php, I am thinking of doing this:
...
$re = curl_exec($ch);
curl_close($ch);
$i = strpos('foo') + 11;
$val = substr($re, $i, 7);
Is there a better way to do it?
我使用php curl访问了一个页面,其中包含隐藏输入中默认值的表单,让我们说 p>
&lt; input type =“hidden”name =“foo”value =“barbazz”&gt;
code> pre>
我如何 得到值 barbazz code>,使用php,我正在考虑这样做: p>
...
$ re = curl_exec($ ch);
ncurl_close($ ch);
$ i = strpos('foo')+ 11;
$ val = substr($ re,$ i,7);
code> pre>
\ n 有更好的方法吗? p>
div>
答
$doc = new DOMDocument();
$doc->loadHTML($your_html);
Read: DOM library.
Example:
$html = '<html>
<body>
<form>
<input type="hidden" name="foo" value="barbazz">
<input type="hidden" name="bar" value="something">
</form>
</body>
</html>';
$doc = new DOMDocument();
$doc->loadHTML($html);
foreach ($doc->getElementsByTagName('input') as $input) {
if ($input->getAttribute('name') == 'foo') {
echo $input->getAttribute('value');
}
}