PHP HTTP-запрос - PullRequest
       17

PHP HTTP-запрос

5 голосов
/ 30 декабря 2010

У меня установлен MAMP Pro под управлением PHP 5.2.13. Когда я пытаюсь инициализировать HTTP-запрос

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

это говорит мне:

"Класс 'HttpRequest' не найден в ...".

Что мне нужно сделать, чтобы установить (?) Это?

Ответы [ 3 ]

6 голосов
/ 20 июня 2012

Современный ответ для MAMP 2.0 и HTTP_Request2:

Перейдите в свой MAMP / bin / php / php5.3.6 / bin / и запустите

. / Pear install --alldepsHTTP_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!

6 голосов
/ 30 декабря 2010

Вы должны включить расширение 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();
2 голосов
/ 30 декабря 2010

Вам нужно включить расширение ...

добавьте следующее в ваш php.ini

extension = php_http.dll

Видимо, об этом много спрашивали:

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

...