Есть ли пакетный менеджер у PEAR?

Ответ

Да, у PEAR (PHP Extension and Application Repository) есть собственный пакетный менеджер с командной строкой pear. Он предназначен для установки библиотек и расширений в глобальную среду PHP на уровне системы, а не отдельного проекта.

Основные команды:

# Установить пакет (например, PHP_CodeSniffer для анализа кода)
pear install PHP_CodeSniffer

# Обновить пакет
pear upgrade PHP_CodeSniffer

# Список установленных пакетов
pear list

Ключевые отличия от Composer:

  • Глобальная установка: Пакеты доступны для всех проектов на сервере.
  • Централизованный репозиторий: Пакеты берутся из официального репозитория PEAR.
  • Устаревшая модель: В современной PHP-разработке Composer (с его composer.json и локальной установкой в vendor/) стал стандартом де-факто из-за лучшего управления зависимостями на уровне проекта.

Сегодня pear в основном используется для установки системных утилит, вроде phpunit (хотя и он перешел на установку через Composer) или phpdoc.

Ответ 18+ 🔞

Ну слушай, вот история про PEAR — это как найти на чердаке у деда старый, но рабочий патефон. Вроде и пыльный, и пластинки поцарапаны, но играет же, ёпта! Так вот, у PEAR есть свой консольный менеджер, pear. Суть его в чём? Он ставит всякие штуки глобально, прямо в систему, чтобы всем проектам на сервере было доступно. Не то что этот ваш модный Composer, который в каждый проект свою кучу библиотек тащит.

Чем обычно тыкают в консоли:

# Поставить какой-нибудь пакет (ну, например, PHP_CodeSniffer, чтобы код гонять)
pear install PHP_CodeSniffer

# Апдейтнуть, если вышла новая версия
pear upgrade PHP_CodeSniffer

# Посмотреть, чего ты уже наставил — а то забудешь же
pear list

А теперь, блядь, главное — чем он не Composer:

  • Глобальный размах: Что поставил — то всем проектам на сервере. Никаких локальных vendor-ов, всё в общую копилку.
  • Центральный склад: Всё тащится с одного официального репозитория PEAR. Никаких packagist.org и прочих вольностей.
  • Динозавр, честно говоря: В современном мире PHP это уже что-то вроде радиолы "Рекорд" — вроде и работает, но все уже на Spotify сидят. Composer с его composer.json и изоляцией зависимостей под каждый проект — это теперь стандарт, ядрёна вошь.

Сейчас pear — это такой инструмент для каких-то системных утилит. Типа того же phpunit раньше через него ставили (хотя он давно уже на Composer перебежал) или phpdoc. В общем, штука специфическая, но знать про неё стоит — вдруг на каком-нибудь древнем сервере влететь, а там только это и есть.