Ответ 1
Прежде всего, репозиторий PEAR и установщик PEAR - это две разные вещи.
PEAR2 - это следующее поколение репозитория PEAR, Pyrus - это следующее поколение установщика PEAR.
Репозиторий PEAR имеет набор стандартов для всех выпущенных там пакетов. Аналогично, репозиторий PEAR2 имеет стандарты, которым должен соответствовать каждый пакет. К сожалению, wiki.php.net, у которого есть все подробности, сейчас нет, но здесь основные различия между стандартами PEAR и стандартами PEAR2.
- Пакеты PEAR2 имеют только PHP 5.3+
- Весь код находится под пространством имен PEAR2
- Каждый пакет должен использовать package.xml v2.0
- Автозагрузка файлов с автозагрузчиком PSR-0
- require_once не разрешено
- Пакеты не должны привязываться к файловой системе, на которой они установлены:
- Новые стандарты управления версиями позволяют разбить BC без переименования пакета.
- Пакеты должны расширять исключения SPL и реализовывать базовый интерфейс Exception
Pyrus, новый установщик, на самом деле является самодостаточным файловым архивом и не требует сложной установки. Новый установщик поддерживает множество функций, которые улучшают исходный установщик PEAR, и может устанавливать существующие пакеты груши из pear.php.net, pear2.php.net и других совместимых с грушей каналов.
Код в файле pyrus.phar соответствует стандартам кодирования PEAR2 и, следовательно, находится в репозитории PEAR2 и может быть установлен, если вы хотите использовать его в качестве библиотеки поставщика.
С установкой груши вы будете использовать
pear install pear/Net_URL2
С пирусом php pyrus.phar install pear/Net_URL2
При установке пакета, который соответствует стандартам PEAR2, вы можете безопасно переместить его в другое место, зафиксировать в репозитории, а установки не привязаны к конкретной машине. Это значительно упрощает создание каталога поставщиков, содержащих библиотеки, которые необходимы вашему приложению, и делиться ими с другими.
Там немного больше, но что основы PEAR2 и Pyrus.