Композиторът радикално промени екосистемата на PHP, създавайки основата за еволюцията на съвременния PHP, т.е. базирани на компоненти приложения и рамки.
Изискванията се декларират в JSON файл на ниво проект, който Composer след това използва, за да прецени кои версии на пакети отговарят най-добре на зависимостите на приложението. Оценката ще вземе предвид вложените зависимости и системните изисквания, ако има такива.
Важно е да се отбележи, че Composer ви позволява да инсталирате необходимите библиотеки за всеки проект. Тя ви позволява да използвате различни версии на една и съща библиотека в различни PHP проекти.
За да инсталирате и използвате библиотеки, управлявани от композирам, ще трябва да ги декларирате в проекта в стандартен формат и Composer ще се погрижи за останалото. Например, ако искате да инсталирате mpdf библиотеката с помощта на Composer, трябва да изпълните следната команда в корена на вашия проект.
$composer require mpdf/mpdf
Но откъде Composer изтегля библиотеките?
какви библиотеки са налични?
Има централно хранилище, където композирам поддържа списък с налични библиотеки: Packagist.
Сега нека видим как да инсталирате Composer на операционни системи като Linux, macOS и Windows.
За да инсталирате composer на linux, unix и macOS, трябва да изтеглите инсталатора от https://getcomposer.org/doc/00-intro.md#installation-linux-unix-macos и го инсталирайте локално като част от вашия проект или глобално като изпълним файл за цялата система.
Инсталаторът ще провери някои PHP настройки и ще изтегли файл, наречен composer.phar, във вашата работна директория. Това е двоичният файл на Composer. Това е PHAR (PHP архив), който е архивен формат за PHP, който може да се изпълнява от командния ред, наред с други неща.
php composer.phar
За да инсталирате composer на Windows, трябва да изтеглите инсталатора от https://getcomposer.org/doc/00-intro.md#installation-windows
След като инсталацията приключи, можете да проверите дали работи правилно с командата
composer -V
и трябва да имате отговор като този
Пакетист, публичното хранилище на композирам, съдържа колекция от PHP библиотеки с отворен код предоставени безплатно чрез Composer. Премиум версия на услугата предлага хостинг за частни пакети, което прави възможно използването на Composer дори в проекти със затворен код.
В Packagist има стотици библиотеки, което показва популярността на Composer. Във вашите PHP проекти, ако имате нужда от функция, която смятате, че вече трябва да е налична като библиотека на трета страна, Packagist е първото място, което трябва да потърсите.
В допълнение към Packagist, можете да поискате от Composer да разгледа други хранилища за инсталиране на библиотека, като промените ключа за хранилища във файла composer.json. Всъщност това е, което ще направите, ако искате да управлявате личните си пакети Composer.
Има два начина за инсталиране на библиотеки с Composer. Нека ги видим и двамата:
За да използвате инсталатора, първо трябва да създадете файл composer.json във вашия проект. Във файла composer.json просто трябва да декларирате зависимостите на вашия проект, както е показано в фрагмента по-долу.
{
"require": {
"mpdf/mpdf": "~6.1"
}
}
По-късно, когато изпълните командата за инсталиране на композитора, в същата папка, където е json файлът, Composer инсталира пакета mpdf и неговите зависимости в директорията на доставчика.
Можем да кажем, че командата composer require е вид пряк път за изпълнение на предишния процес на създаване на файл composer.json. require автоматично ще добави пакет към вашия файл composer.json. Следващата команда показва как да инсталирате mpdf пакета с помощта на require.
$composer require mpdf/mpdf
След инсталирането на mpdf пакета и неговите зависимости, require също добавя запис на пакета, който се инсталира във файла composer.json. Ако файлът composer.json не съществува, той ще бъде създаден в движение.
Ercole Palmeri
Операция по офталмопластика с помощта на търговския зрител Apple Vision Pro беше извършена в поликлиниката в Катания...
Развитието на фини двигателни умения чрез оцветяване подготвя децата за по-сложни умения като писане. Оцветявам…
Военноморският сектор е истинска световна икономическа сила, която се е насочила към пазар от 150 милиарда...
Миналия понеделник Financial Times обяви сделка с OpenAI. FT лицензира своята журналистика от световна класа...