php - 在 PHP 中找不到 HttpRequest

标签 php httprequest

我只想做一个带post参数的httprequest。我使用了这段代码

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

但我收到此错误:

ErrorException [ Fatal Error ]: Class 'HttpRequest' not

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

任何帮助将不胜感激

最佳答案

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

我能找到的唯一一个在更新 php.ini 配置文件以包含扩展后启动 Apache 服务器时产生的错误。

不过不要害怕,因为似乎有一个 GitHub 项目提供类内的功能,而不是扩展。 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());

否则,似乎唯一可行的选择是自己从源代码编译 .dll 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/

相关文章:

javascript - 在javascript中的HTTP POST请求中发送cookie

php - 在 codeigniter 中同时更新两个表

php - 删除与 Laravel 5.7 模式匹配的 Redis 键

java - 如何使用Map访问servlet中的httpRequest数据?

Python请求+代理+302重定向,为什么请求不正确?

http - 流水线化 PUT 和/或 POST 请求的缺点是什么?

php - 以这种特定方式对我的数据库进行非规范化会有助于提高性能吗?

php - 是否有必要在 html 标记中结束 php 查询或函数宽度 ';'?

php - 如何配置 PHPUnit 以测试 ZF2 应用程序中的整个供应商文件夹?

httprequest - 如何使用 jmeter 计算失败的请求