PHP PECL_HTTP vs cURL Extension

Я работаю над PHP-клиентом для CouchDB. При просмотре документации php.net, касающейся HTTP и cURL, я столкнулся с расширением PECL_HTTP. На первый взгляд, я думаю, что я хотел бы использовать это расширение PECL вместо cURL, потому что он намного проще в использовании, и я не слишком усложняю работу HTTP. Плюс, мне всегда нравилось пробовать новые вещи, поэтому я бы не прочь мочить ноги.

Что касается моего вопроса сообществу StackOverflow:

  • Кто-нибудь использовал расширения PECL_HTTP и cURL?
  • Есть ли у расширения PECL серьезные проблемы с производительностью?
  • Является ли расширение PECL удобным для пользователя, как оно появляется на поверхности?
  • Является ли проверенная библиотека cURL выше?

Изменить: Как выясняется, расширение PECL_HTTP использует некоторые из исходного кода cURL под капотом, поэтому они не совсем разные звери. Оба являются также скомпилированными расширениями для PHP.

Ответ 1

Расширение PECL_HTTP оказалось намного проще в использовании, почти сокращая мой код пополам в некоторых местах.:)

Ответ 2

По-моему, CURL прост и понятен. В PHP Cookbook (O'Reilly, 2002) CURL был выбран по различным причинам (производительности).

Ответ 3

Сначала я должен сказать, что мы использовали как в нашей компании, так и в обработке, мне больше нравится php_http, и я ценю работу Майка.

Но мы отказались от php_http, потому что он не связан в php vanilla. Мы работаем в среде Windows, и для каждого расширения pecl, которое не связано с самим php, мы должны сами их скомпилировать (что не так уж плохо). Во время компиляции мы получили сообщение о том, что некоторые заголовки отсутствовали. Оказалось, что это была полная наша ошибка, потому что это четко указано в документации.

И начиная с версии 2.0 php_http он имеет две нестандартные зависимости: - raphf 1.0.0 или новее - propro 1.0.0 или новее

Поэтому нам нужно было скомпилировать больше, чем только php_http. Но для propro 1.0.0 (2013-08-12) config.w32 отсутствовал при загрузке (по крайней мере, в состоянии записи). Поэтому нам пришлось написать свой собственный. И так далее...

В итоге мы получили его для PHP 5.5 VC11 x86, но потребовалось некоторое время. В компаниях у вас иногда нет времени тратить на такие вещи. Curl всегда работает из коробки, потому что в комплекте. Это может быть серьезной причиной не использовать php_http.

Что-то, что я бы очень признателен, если php_http сделает это в php vanilla.

Надеюсь, это поможет некоторым лицам, принимающим решения, -)

Ответ 4

Я еще не пробовал PECL_HTTP. Я предпочитаю использовать cURL, так как сначала я могу проверить его в командной строке. Кроме того, cURL доступен в стандартной установке linux, поэтому я могу ожидать, что он будет доступен в различных версиях на основе Linux. Я не знаю о доступности PECL, потому что я не использую какую-либо функцию в своем коде.