Saturday 26 December 2015

What is Composer in php? - Manage the Dependencies

What is Composer in php? -  Manage the Dependencies


Question: What is Composer?
Composer is an application-level package manager for the PHP.


Question: Why Composer is used?
  1. Composer provides a standard format for managing dependencies of PHP software.
  2. Composer installs the dependencies libraries.
  3. Composer provides autoload capabilities for libraries.


Question: Where composer is used?
When we need manage the dependencies of PHP application, we can use Composer.


Question: How Composer Works?
It works commond line.


Question: Who developed the Composer?
  1. Nils Adermann.
  2. Jordi Boggiano.
.

Question: What is current stable version of Composer?
1.2.0 / July 18, 2016.


Question: In Which language, It was writeen?
PHP.


Question: What is offical website of Composer?
http://getcomposer.org/


Question: What are System Requirements for compser?
  1. PHP 5.3.2+
  2. Need git, svn or hg repository depend of composer version.


Question: What is command to download the composer?
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
You need curl OR openssl enable for above command.


Question: How to install the composer?
php composer.phar install



Question: How to update the composer?
php composer.phar update



Question: How to check current version of composer?
php composer.phar -V



Question: Can I used composer standard for my new project?
Yes, you can start.


Question: Is it open-source?
Yes, It is open-source.


Question: Give me sample of composer.json file?
{
    "name": "zendframework/skeleton-application",
    "description": "Skeleton Application for ZF2",
    "license": "BSD-3-Clause",
    "keywords": [
        "framework",
        "zf2"
    ],
    "homepage": "http://framework.zend.com/",
    "require": {
        "php": ">=5.3.3",
        "zendframework/zendframework": "2.3.2"
    }
}