Composer Tutorial (PHP Hampshire Sept 2013)

Post on 06-May-2015

2,957 views 3 download

description

Watch the presentation video here: http://www.youtube.com/watch?v=nnDUSkvdvWg

transcript

ComposerA Lightning Talk by James Titcumb

● Your app depends on libraries● Maintenance - keeping up to date● Libraries depend on other libraries● Could result in conflicting code - MESS

The Problems

Guzzle Twig PSR-3

Pimple

nooooo!!!!!!

Nils Adermann (phpBB)Jordi Boggiano (SF2, Doctrine)

Say hello to...

What Does It Do?

● You tell it what libraries you want● Manages dependencies● Installs them (downloads them)● Creates an autoloader

Installing composer.phar

$ curl -sS https://getcomposer.org/installer | php

#!/usr/bin/env php

All settings correct for using Composer

Downloading...

Composer successfully installed to: composer.phar

Use it: php composer.phar

$

composer.json

{

"require": {

"php": ">= 5.3",

"symfony/console": "2.3.*"

}

}

Now Install$ php composer.phar install

Loading composer repositories with package information

Installing dependencies (including require-dev)

- Installing symfony/console (v2.3.4)

Downloading: 100%

Writing lock file

Generating autoload files

$

Where Did You Come From?

● Packagist - main repository

● You can make your own (Satis)

Autoloading!

index.php

<?php

require 'vendor/autoload.php';

// You can use your dependencies

// without requiring them all the time

use Symfony\Component\Console\Application;

60 seconds Live Demo (!)

● Download Composer● Create composer.json● Run Composer install● Write index.php

● It’s very simple● Magical dependencies (recursively)● You can make your own packages!● Composer autoloader rocks (PSR-0/4)● Simplifies deployment!

● Get it here:

Summary

getcomposer.org

Thanks!

@asgrimgithub.com/asgrim