我只想用发布参数做一个httprequest。我用了这段代码

$r = new HttpRequest($url, HttpRequest::METH_POST);
$r->send();

但是我得到这个错误:



我将此extension=php_http.dll添加到我的php.ini中,但问题仍然存在。
我下载了php_http.dll文件,并将其插入到php的ext文件夹中,但是它已经存在,因此我进行了替换,仍然有同样的问题。

任何帮助,将不胜感激

最佳答案

如果您使用的是php 5.4或更高版本,则扩展库中似乎没有php_http.dll文件(除非有人能找到我错过的文件?)。

在更新php.ini配置文件以包含扩展名之后,我在启动Apache服务器时发现的唯一错误。

但是不要害怕,因为似乎有一个GitHub Project提供了类中的功能,而不是扩展。 Click here to find the required class

如果您将此类保存在您的项目中,然后像这样调用;

include_once('HttpRequest.php'); //where HttpRequest.php is the saved file
$url= 'http://www.google.com/';
$r = new HttpRequest($url, "POST");
var_dump($r->send());

失败了,似乎唯一可行的选择是从源here:。(

否则,另一种选择是改用cURL。 cURL提供了httpRequest的大多数(如果不是全部)功能。

一个简单的例子是:
$url = "http://www.google.com/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_NOBODY, TRUE); // remove body
$head = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
var_dump($head);

可以在php网站Here上找到更多详细信息和更好的示例。

我希望这有助于回答您的问题,而不是给您留下更多...

关于php - 在php中找不到HttpRequest,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18579407/

10-10 12:37