Обзор

Требования

  1. PHP 7.2.5
  2. Чтобы использовать обработчик потока PHP, allow_url_fopen должен быть включен в вашем php.ini вашей системы.
  3. Чтобы использовать обработчик cURL, вы должны иметь последнюю версию cURL >= 7.19.4. скомпилированная с OpenSSL и zlib.

Примечание

Guzzle больше не требует cURL для отправки HTTP-запросов. Guzzle будет использовать обертку потока PHP для отправки HTTP-запросов, если cURL не установлен. В качестве альтернативы вы можете предоставить свой собственный HTTP-обработчик, используемый для отправки запросов. Помните, что cURL по-прежнему требуется для отправки одновременных запросов.

Установка

Рекомендуемый способ установки Guzzle - с помощью Composer. Composer - это инструмент управления зависимостями для PHP, который позволяет вам объявить зависимости, необходимые вашему проекту, и устанавливает их в ваш проект.

# Install Composer
curl -sS https://getcomposer.org/installer | php

Вы можете добавить Guzzle в качестве зависимости с помощью Composer:

composer require guzzlehttp/guzzle:^7.0

В качестве альтернативы вы можете указать Guzzle как зависимость в существующем файле composer.json вашего проекта:

 {
   "require": {
      "guzzlehttp/guzzle": "^7.0"
   }
}

После установки необходимо затребовать автозагрузчик Composer:

require 'vendor/autoload.php';

Вы можете узнать больше о том, как установить Composer, настроить автозагрузку и другие лучшие методы определения зависимостей на сайте getcomposer.org.

Кровоточащий край

Во время разработки вы можете следить за последними изменениями в мастер-ветке, установив требование версии для Guzzle на ^7.0@dev.

{
   "require": {
      "guzzlehttp/guzzle": "^7.0@dev"
   }
}

Лицензия

Лицензируется с использованием лицензии MIT.

Copyright (c) 2015 Michael Dowling <https://github.com/mtdowling>

Настоящим предоставляется бесплатное разрешение любому лицу, получившему копию данного программного обеспечения и сопутствующих файлов документации ("Программное обеспечение"), совершать сделки с с Программным обеспечением без ограничений, включая, без ограничения, права использовать, копировать, изменять, объединять, публиковать, распространять, выдавать сублицензии и/или продавать копии Программного обеспечения, а также разрешать лицам, которым предоставляется Программное обеспечение разрешать лицам, которым предоставлено Программное обеспечение, делать это при соблюдении следующих условий:

Вышеуказанное уведомление об авторском праве и данное уведомление о разрешении должны быть включены во все копии или существенные части Программного обеспечения.

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ "КАК ЕСТЬ", БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОГО СОСТОЯНИЯ, ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ И НЕНАРУШЕНИЯ ПРАВ. НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ АВТОРЫ ИЛИ ВЛАДЕЛЬЦЫ АВТОРСКИХ ПРАВ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УБЫТКИ ИЛИ ДРУГУЮ ОТВЕТСТВЕННОСТЬ, БУДЬ ТО В РАМКАХ ДОГОВОРНОГО ИСКА, ДЕЛИКТА ИЛИ ИНЫМ ОБРАЗОМ, ВОЗНИКАЮЩИЕ, ИЗ ИЛИ В СВЯЗИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ИЛИ ДРУГИМИ ДЕЙСТВИЯМИ С НИМ. ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.

Вклад

Руководящие принципы

  1. Guzzle использует PSR-1, PSR-2, PSR-4 и PSR-7.
  2. Guzzle должен быть простым и быстрым, с очень малым количеством зависимостей. Это означает. что не все запросы на функции будут приняты.
  3. Минимальное требование к версии PHP для Guzzle - PHP 7.2. Запросы на поставку должны не требовать версию PHP выше, чем PHP 7.2, если только функция не используется только используется условно, и файл может быть разобран PHP 7.2.
  4. Все запросы на перенос должны включать модульные тесты, чтобы убедиться, что изменение работает так, как и для предотвращения регрессий.

Выполнение тестов

Для того чтобы внести свой вклад, вам нужно будет проверить исходный текст с GitHub и установить зависимости Guzzle с помощью Composer:

git clone https://github.com/guzzle/guzzle.git
cd guzzle && composer install

Guzzle протестирован с помощью PHPUnit. Запустите тесты с помощью Makefile:

make test

Примечание

Вам потребуется установить node.js v8 или новее, чтобы выполнить интеграционные тесты HTTP-обработчиков Guzzle.

Сообщение об уязвимости безопасности

Мы хотим убедиться, что Guzzle является безопасной клиентской библиотекой HTTP для всех. Если вы обнаружили уязвимость безопасности в Guzzle, мы будем благодарны за вашу помощь в раскрытии ее нам ответственным образом.

Публичное раскрытие уязвимости может подвергнуть риску все сообщество. Если вы обнаружили проблему безопасности, пожалуйста, напишите нам по адресу security@guzzlephp.org. Мы будем работать с вами, чтобы убедиться, что мы понимаем масштаб проблемы, и что мы полностью устраним вашу озабоченность. Мы считаем корреспонденцию, отправленную на security@guzzlephp.org, нашим наивысшим приоритетом, и работаем над тем, чтобы решать любые возникающие проблемы как можно быстрее.

После устранения уязвимости безопасности в кратчайшие сроки будет выпущено исправление безопасности.