我有PHP的简单HTML DOM解析器,我使用以下标记:
$html = file_get_html('http://www.google.com');
但是,如何将帖子变量(如cURL)发送到该页面并获得响应?例如
$html = file_get_html('http://www.google.com', array("Item"=>"Value", "Item2"=>"Value2"));
答案 0 :(得分:8)
据我所知,文档没有提到它,但在看了一下源代码后,我注意到你正在使用的函数接受stream context作为它的第三个参数。您可以使用以下PHP功能创建发布请求:
$request = array(
'http' => array(
'method' => 'POST',
'content' => http_build_query(array(
'Item' => 'Value',
'Item2' => 'Value2'
)),
)
);
$context = stream_context_create($request);
$html = file_get_html('http://www.google.com', false, $context);
如果你不喜欢上下文或者更喜欢不同的方法(比如cURL扩展名),你也可以使用它来获取页面内容,然后将其提供给str_get_html()
或{{1}的解析器};该类本身在您内部使用的方法上几乎完全相同。