【问题标题】:PHP HTTP-RequestPHP HTTP 请求
【发布时间】:2011-06-01 17:10:08
【问题描述】:

我安装了运行 php 5.2.13 的 MAMP Pro。当我尝试初始化 HTTP 请求时

$r = new HttpRequest('http://example.com/', HttpRequest::METH_GET);

它告诉我:

“在...中找不到类 'HttpRequest'”。

我需要做什么来“安装(?)”它?

【问题讨论】:

    标签: php http httprequest php-5.2


    【解决方案1】:

    您必须启用 http 扩展:

    http://www.php.net/manual/en/http.setup.php

    或者您可以尝试新的 HTTP_Request2:

    sudo pear install --alldeps HTTP_Request2-alpha
    

    然后:

    $req = new HTTP_Request2('your.url');
    $req->setMethod('POST');
    $req->setHeader("content-type", $mimeType);
    $req->setBody('');
    $response = $req->send();
    

    【讨论】:

    • 我想我必须先安装它...当我运行命令“pecl install pecl_http”时,它给我一个错误提示“正在检查 event.h...未找到配置:警告:在没有 libevent 支持的情况下继续检查 magic.h... 未找到 configure: error: could not find magic.h"... 现在怎么办?
    • 您使用的是哪个平台?哪个版本的 PHP ?
    • @Vojta 我正在运行 MAMP (Mac 10.6.5 / Unix) PHP v5.2.13 和/或 PHP v5.3.2
    • @JNK: 抱歉耽搁了......也许是在错误的地方寻找eventlib,我猜它已经被macports安装了,所以它在/opt/local/下,所以尝试安装macports 的 http 扩展...
    • ... 因为默认位置可能在 /usr/local 下
    【解决方案2】:

    MAMP 2.0 和 HTTP_Request2 的当代答案:

    进入你的 MAMP/bin/php/php5.3.6/bin/ 并运行

    ./pear install --alldeps HTTP_Request2

    重新启动服务器并使用 PEAR 存储库中的以下代码进行测试:

    <?php
    require_once 'HTTP/Request2.php';
    
    $request = new HTTP_Request2('http://pear.php.net/', HTTP_Request2::METHOD_GET);
    try {
        $response = $request->send();
        if (200 == $response->getStatus()) {
            echo $response->getBody();
        } else {
            echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
                 $response->getReasonPhrase();
        }
    } catch (HTTP_Request2_Exception $e) {
        echo 'Error: ' . $e->getMessage();
    }
    ?>
    

    不要忘记 require_once 语句!

    【讨论】:

      【解决方案3】:

      您需要启用扩展...

      将以下内容添加到您的 php.ini

      extension = php_http.dll
      

      显然这被问了很多:

      http://php.bigresource.com/Track/php-33sNme7A/

      【讨论】:

      • 但是,这不适用于 MAMP(在 Mac OS X 上运行),仅适用于 WAMP (Windows)。
      • 链接已损坏。
      猜你喜欢
      • 2015-06-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-31
      • 2023-03-04
      • 1970-01-01
      • 2011-01-02
      • 2021-07-29
      • 1970-01-01
      相关资源
      最近更新 更多