Adrian Cardenas
Web developer focusing on PHP, JS, HTML, CSS.
by
Adrian Cardenas (@aramonc)
04/21/2013
curl -sS https://getcomposer.org/installer | php
curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer
{
"require": {
"vendor/package": "1.3.2",
}
}
{
"require-dev" : {
"firephp/firephp-core": "0.4.0@rc2"
}
}
{
"require": {
"monolog/monolog": "1.0.*@beta",
"acme/foo": "@dev"
}
}
{
"require": {
"acme/foo": "1.0.x-dev#abc123"
}
}
php composer.phar create-project -sdev
--repository-url="http://packages.zendframework.com"
zendframework/skeleton-application path/to/install
This is the equivalent of doing a git clone/svn checkout followed by a composer install of the vendors.
php composer.phar install
composer.json
{
"require" : {
"aws/aws-sdk-php-zf2": "1.0.*"
}
}
php composer.phar install
composer.lock contains
{
"require" : {
"aws/aws-sdk-php-zf2": "1.0.1"
}
}
php composer.phar update
require "vendor/autoload.php";
{
"name": "monolog/monolog",
"type": "library",
"description": "Logging for PHP 5.3",
"keywords": ["log","logging"],
"homepage": "http://github.com/Seldaek/monolog",
"license": "MIT",
"authors": [
{
"name": "Jordi Boggiano",
"email": "j.boggiano@seld.be",
"homepage": "http://seld.be",
"role": "Developer"
}
],
"require": {
"php": ">=5.3.0"
},
"autoload": {
"psr-0": {
"Monolog": "src"
}
}
}
{
"autoload": {
"psr-0": { "Certatim": "src/" }
}
}
{
"autoload": {
"classmap": ["src/", "lib/", "MyClass.php"]
}
}
{
"autoload": {
"files": ["src/MyLibrary/functions.php"]
}
}
By Adrian Cardenas
A brief introduction to Composer for project dependency management and Packagist for library/package distribution.