Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.
Updating packages
composer update
Updates all packages
composer update --with-dependencies
Updates all packages and its dependencies
composer update vendor/package
Updates a certain package from vendor
composer update vendor/*
Updates all packages from vendor
composer update --lock
Updates composer.lock hash without updating any packages
Installing dependencies
composer install
Downloads and installs all the libraries and dependencies outlined in the composer.lock file. If the file does not exist it will look for composer.json and do the same, creating a composer.lock file.
composer install --dry-run
Simulates the install without installing anything
This command doesn’t change any file. If composer.lock is not present, it will create it.
composer.lockshould always be committed to the repository. It has all the information needed to bring the local dependencies to the last committed state. If that file is modified on the repository, you will need to run composer install again after fetching the changes to update your local dependencies to those on that file.
Adding packages
composer require vendor/package.
Adds package from vendor to composer.json’s require section and installs it
composer require vendor/package --dev
Adds package from vendor to composer.json’s require-dev section and installs it.
This command changes both the composer.json and composer.lock files.
Removing packages
composer remove vendor/package
Removes vendor/package from composer.json and uninstalls it
This command changes both the composer.json and composer.lock files.