Composer is a popular tool for dependency management which is widely used by PHP .Composer will check which other packages a specific project depends on and install them for you, using the appropriate versions according to the project requirements.
Prerequisites
For this post, you will need:
A system running Ubuntu 16.04 or 16.10
Access to the server as a regular user with sudo permission
Update and Installing the Dependencies:
Update the package manager with below Cli:
sudo apt-get update
Install curl in order to download Composer php-cli or installing and running it.Install php-mbstring package is necessary to provide functions for a library we’ll be using. git is used by Composer for downloading project dependencies, and unzip for extracting zipped packages.
#install one by one sudo apt-get install curl sudo apt-get install php-cli sudo apt-get install php-mbstring sudo apt-get install git sudo apt-get install unzip #install via single command sudo apt-get install curl php-cli php-mbstring git unzip
Downloading and Installing Composer:
curl -sS https://getcomposer.org/installer -o composer-setup.php
Verify that the installer matches the SHA-384 hash :
#Run php command for validation php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" #Output: Installer verified
Now install composer globally via below Cli:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer #Output: Output All settings correct for using Composer Downloading 1.1.1... Composer successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
Validate the installation, run:
composer #Output: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.4.1 2017-03-10 09:29:45 Usage: command [options] [arguments] Options: -h, --help Display this help message -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question --profile Display timing and memory usage information --no-plugins Whether to disable plugins. -d, --working-dir=WORKING-DIR If specified, use the given directory as working directory. -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug Available commands: about Short information about Composer. archive Create an archive of this composer package. browse Opens the package's repository URL or homepage in your browser. clear-cache Clears composer's internal package cache. clearcache Clears composer's internal package cache. config Set config options. create-project Create new project from a package into given directory. depends Shows which packages cause the given package to be installed. diagnose Diagnoses the system to identify common errors. dump-autoload Dumps the autoloader. dumpautoload Dumps the autoloader. exec Execute a vendored binary/script. global Allows running commands in the global composer dir ($COMPOSER_HOME). help Displays help for a command home Opens the package's repository URL or homepage in your browser. info Show information about packages. init Creates a basic composer.json file in current directory. install Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json. licenses Show information about licenses of dependencies. list Lists commands outdated Shows a list of installed packages that have updates available, including their latest version. prohibits Shows which packages prevent the given package from being installed. remove Removes a package from the require or require-dev. require Adds required packages to your composer.json and installs them. run-script Run the scripts defined in composer.json. search Search for packages. self-update Updates composer.phar to the latest version. selfupdate Updates composer.phar to the latest version. show Show information about packages. status Show a list of locally modified packages. suggests Show package suggestions. update Updates your dependencies to the latest version according to composer.json, and updates the composer.lock file. validate Validates a composer.json and composer.lock. why Shows which packages cause the given package to be installed. why-not Shows which packages prevent the given package from being installed.
This means Composer was successfully installed on your system.