Исходный текст передается с общедоступного номера Wechat: qq1005349393
Знакомство с композитором
Composer-это инструмент управления зависимостями пакетов <шрифт> для PHP. Мы можем объявить библиотеки внешних инструментов, от которых мы зависим в проекте. Composer поможет вам установить эти зависимые библиотечные файлы. С его помощью мы можем легко использовать команду для передачи отличного кода других людей в наш проект. Composer по умолчанию устанавливается не глобально, а на основе каталога (например, поставщика) указанного проекта. Для Composer требуется PHP версии 5.3.2 + или более, и необходимо включить OpenSSL. Composer работает на платформах Windows, Linux и OSX.
Установка композитора
1. Установка Windows На платформу Windows, нам просто нужно скачать Composer-Setup.exe и устанавливайте его шаг за шагом. Обратите внимание, что вам необходимо включить конфигурацию OpenSSL. Давайте откроем php . ini в каталоге PHP и удалите точку с запятой раньше. dll. После завершения установки проверьте, прошла ли установка успешно. иметь доступ к
composer --version
Командный вид, как показано ниже: 2. Установка Linux
// Download the composer file php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" // Install composer using PHP interpreter php composer-setup.php // Move to the directory of executable files, so that we can use the composer command directly to make global calls later. mv composer.phar /usr/local/bin/composer
3. Установка Mac Os
Direct Installation // Download and install curl -sS https://getcomposer.org/installer | php // Move to the directory of executable files for global invocation sudo mv composer.phar /usr/local/bin/composer Installation using brew package management tool on Mac brew install composer // Check if the installation is successful composer --version
4. Как переключить источник зеркального изображения композитора Теперь Али обрабатывает свой собственный источник изображения композитора и может синхронизироваться с официальным сайтом Packagist в режиме реального времени. Рекомендуется использовать источник изображения композитора Али.
// Switching Mirror Source composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ // Unconfigure composer config -g --unset repos.packagist // Switch mirror source only for current project (non-global handover) composer config repo.packagist composer https://mirrors.aliyun.com/composer/ // Cancel the mirror source for the current project composer config --unset repos.packagist
5. Обновления композитора Обновления композитора могут быть обновлены с помощью его собственных команд
composer selfupdate
Композитор использует
При использовании Composer несколько распространенных операций заключаются в следующем:
1.установка composer Когда ваш файл composer.json добавляет зависимости проекта, верно следующее:
{ "require": { "topthink/framework": "5.0.5", } }
Когда мы используем composer install, мы автоматически устанавливаем соответствующие пакеты в соответствии с зависимостями в пакетах.
2.обновление composer Эта команда обновляет версии пакетов на основе зависимостей пакетов и соответствующих версий в composer. Файл конфигурации JSON, но он обновляет все пакеты до последней версии и требует тщательного использования в реальных проектах, особенно в производственных средах.
3.требование к композитору В пункте 1 мы говорили о том, как устанавливать пакеты в соответствии с конфигурацией зависимостей пакетов в composer. Файл конфигурации JSON. Эта команда может установить пакет вручную вместо того, чтобы полагаться на файл конфигурации. После установки соответствующая конфигурация зависимостей автоматически добавляется в composer. Файл конфигурации JSON.
4.composer удалить Эта команда удаляет указанные зависимости пакетов, например, нам не нужно полагаться на пакет, чтобы напрямую использовать команду + имя пакета
composer remove "topthink/framework": "5.0.5"
Аналогично, после выполнения этой команды зависимости пакетов в composer. Файл конфигурации JSON автоматически удаляется без нашего ручного управления.
5.composer показать Основная цель этой команды-просмотреть информацию, связанную с пакетом, которая была установлена в текущем проекте.
// View information on all installed packages composer show // Specify information to view installed packages composer show topthink/framework
В чем разница между композитором. JSON и композитор. замок
В процессе использования composer мы обнаружим, что при выполнении таких команд, как обновление composer, мы случайно найдем дополнительного композитора. файл блокировки. Какова основная цель этого документа? Этот файл в основном используется для управления версией пакета. Когда мы используем команду composer update, composer автоматически создает соответствующего композитора. блокировка файла в соответствии с зависимостью версии пакета composer. джсон. В следующий раз, когда мы выполним команду composer, мы сначала прочитаем содержимое composer. файл блокировки.
Ограничения версии композитора
Когда мы используем composer для установки пакетов, мы должны учитывать проблему с версией, поскольку разные версии имеют проблемы с совместимостью, поэтому нам необходимо уделять особое внимание версии пакета при использовании инструмента для установки пакетов. При неправильном использовании это может легко привести к параличу проекта из-за проблемы с версией пакета. Наиболее распространенными из них являются следующие: 1. Точная версия Уточните, следует ли устанавливать эту версию, если вам нужно установить пакет версии 1.2.3
"topthink/think-captcha": "v1.2.3",
2. Подстановочные знаки Он может удовлетворять указанному диапазону, варьирующемуся от 5,0 до 5,1, следующим образом
"topthink/framework": "5.0.*",
3. Область Обычно используемые операторы для областей >,>=,<,<=,!=. Вы можете определить несколько областей, используя пробелы или запятые для представления логического И и двойные вертикальные линии || для представления логического ИЛИ. Приоритет и будет больше, чем или.
// Represents versions greater than or equal to 0.90 and less than 3.0 "ruflin/elastica": ">=0.90 <3.0",
4. Волновые символы~ Этот оператор ограничивает минимальный номер версии.
Allow the last version number in the expression to reach the maximum
Например, ~1.2 равно.2 < 2.0, ~1.5.6 равно.5.6 < 1.6.0. То есть основной номер версии и второстепенный номер версии остаются неизменными, а номер версии для восстановления может достигать максимума. 5. Сложите банкноты^ Этот оператор ограничивает блокировку максимального номера версии.
Lock expression is unchanged by the first major version number, allowing upgraded version to a secure version number
Если ^ 1.2 равно.2 < 2.0, то ^ 1.2.3 равно.2.3 < 2.0.
Семантизация
Что такое семантика? Более простым моментом является управление номерами версий. Наши пакеты обычно делятся на следующие форматы: Основной номер версии PHP + второстепенный номер версии + исправленная версия
Как и в приведенном выше примере, мы все упоминали, что некоторые пакеты имеют номер версии x.x. Первый-это основной номер версии, второй-дополнительный номер версии, а третий-номер версии для исправления некоторых ошибок. Конкретную ссылку можно сделать на https://semver.org/lang/zh-CN./
Оптимизация использования композитора
1. Тип загрузки компоновщика Типы загрузки компоновщика, включая classmap, psr-0, psr-4, файл. psr-0, постепенно отменяются, и некоторые проекты все еще используют это правило, потому что некоторые старые проекты все еще используют его. Большинство из них используют psr-4. Карта классов-это обработка сопоставления файлов пакетов, которая описана ниже. Файл в основном загружает некоторые вспомогательные операции. 1.дамп композитора-автоматическая загрузка-o Эта команда создает сопоставление файлов на основе пространства команд и пути к пакету, и при загрузке пакета загружает файл пакета в соответствии с сопоставлением. Это ускорит доступ к нашим файлам пакетов. Когда мы выполняем команду, мы можем просмотреть следующий интерфейс. То, что обведено кружком, – это конфигурация сопоставления классов. Как композитор конкретно обрабатывает эту логику порядка загрузки, можно увидеть, посмотрев на порядок обработки классов загрузки композитора. Метод, обведенный на следующем рисунке, заключается в том, чтобы сначала загрузить карту классов, но не найдено, чтобы загрузить psr-4. 2.композитор дамп-автозапуск -а основной