SlideShare une entreprise Scribd logo
1  sur  113
Télécharger pour lire hors ligne
COMPOSER
The missing package manager for PHP
PyPi
Common Web Languages
Communities inside PHP
SHARING WASN’T CARING
• Autoloading PHP Classes	

• Dependencies?	

• Where does this thing go?
WHY BOTHER?
• As a developer, you want to use consistent
version of libraries/dependencies and tools	

• Consistent versioning across all team members
• Share your own library
WHY BOTHER?
More developers, more dependency problem
PHPUnit 3.6.10	

Behat 2.3.5	

Monolog 1.0
PHPUnit 3.4.15	

Behat 2.2	

Monolog 1.2
Hasin Rifat
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
SOLUTIONS
• PEAR	

• SVN Externals	

• Git Submodules	

• Vendor Management Scripts
Composer!
Isn’t PEAR and the PEAR installer the
de-facto PHP package manager?
Isn’t PEAR and the PEAR installer the
de-facto PHP package manager?
Yep
Why not PEAR?
• PEAR tends to be used globally*	

• Composer is intended to be used in a 

per-project manner	

• Spread out channels	

• Strict Standards
* pear can be installed per-project. But we are not gonna talk about it.
COMMON SOLUTION
$ cd ~/projects/my_awesome_project/vendor/	
$ mkdir Behat && cd Behat	
$ wget https://github.com/downloads/Behat/Behat/behat.phar	
$ cd ../../	
$ php vendor/Behat/behat.phar tests/features/
COMMON SOLUTION
$ cd ~/projects/my_awesome_project/vendor/	
$ mkdir Behat && cd Behat	
$ wget https://github.com/downloads/Behat/Behat/behat.phar	
$ cd ../../	
$ php vendor/Behat/behat.phar tests/features/
Or use a git submodule…	

or an SVN external if it’s still 2007
COMMON SOLUTION
$ cd ~/projects/my_awesome_project/vendor/	
$ mkdir Behat && cd Behat	
$ wget https://github.com/downloads/Behat/Behat/behat.phar	
$ cd ../../	
$ php vendor/Behat/behat.phar tests/features/
Or use a git submodule…	

or an SVN external if it’s still 2007
BUT, we can do better…
http://getcomposer.org
Install Composer
Install Composer
With PEAR
Install Composer
With PEAR
For MaximumTrolling
Install Composer
With PEAR
For MaximumTrolling
Install Composer
With PEAR
For MaximumTrolling
I am
kidding!
INSTALLING COMPOSER
INSTALLING COMPOSER
Locally

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

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

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

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

$ mv composer.phar /usr/local/bin/composer
NowYou Can Use Composer
I Am Building A Project
How Composer can help me?
COMPOSER 101
Getting the dependencies
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
$ vi composer.json
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
$ vi composer.json put this in your project root
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
$ vi composer.json put this in your project root
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
$ vi composer.json put this in your project root
• Exact version
• Range
• Wildcard
• Tilde
COMPOSER 101
Getting the dependencies
$ cd ~/Desktop/composer-test/
$ vi composer.json
$ composer.phar install
put this in your project root
• Exact version
• Range
• Wildcard
• Tilde
Your dependency
Your dependency
Your dependency’s 	

dependencies
Your dependency
Your dependency’s 	

dependencies
Your dependency
Your dependency’s 	

dependencies
Your dependency
Suggested Package
Checking Server Requirements
I need your server to have these…
File Organisation
vendor/autoload.php
UsingThe Libraries
UsingThe Libraries
require_once 'vendor/autload.php';
UsingThe Libraries
require_once 'vendor/autload.php';
Include the libraries
UsingThe Libraries
require_once 'vendor/autload.php';
Include the libraries
Start using it
UsingThe Libraries
require_once 'vendor/autload.php';
Include the libraries
Start using it
As simple as that
Installing, Updating And Moving
On
How does Composer guarantee consistency?
composer.json	

composer.lock
composer.json	

composer.lock
Metadata and list your dependencies
composer.json	

composer.lock
Metadata and list your dependencies
Existing dependencies and current
commit hashes
composer.json	

composer.lock
composer.json	

composer.lock
Update
composer.json	

composer.lock
Update
composer.json	

composer.lock
Update
reads
composer.json	

composer.lock
Update
reads
composer.json	

composer.lock
Update
reads
gets latest
composer.json	

composer.lock
Update
reads
gets latest
composer.json	

composer.lock
Update
reads
gets latest
writes
composer.json	

composer.lock
Update Install
reads
gets latest
writes
composer.json	

composer.lock
Update Install
reads
gets latest
writes
composer.json	

composer.lock
Update Install
reads
gets latest
writes
reads
composer.json	

composer.lock
Update Install
reads
gets latest
writes
reads
composer.json	

composer.lock
Update Install
reads
gets latest
writes
reads
compares
composer.json	

composer.lock
Update Install
reads
gets latest
writes
reads
compares
composer.json	

composer.lock
Update Install
reads
gets latest
writes
reads
compares
gets locked version
KeepTheTeam OnThe Same Page
• Commit composer.lock into the repository	

• Use composer install
• Ignore the vendor directory
A Contributor Appears
A Contributor Appears
$ git clone git@github.com:tareq1988/composer-test.git
A Contributor Appears
$ git clone git@github.com:tareq1988/composer-test.git
$ composer install
A Contributor Appears
$ git clone git@github.com:tareq1988/composer-test.git
$ composer install
A Contributor Appears
$ git clone git@github.com:tareq1988/composer-test.git
$ composer install
A Contributor Appears
$ git clone git@github.com:tareq1988/composer-test.git
$ composer install
Lock File
Adding A New Package
$ composer.phar require symfony/yaml=~2.1.0
Finding A Package
https://packagist.org/
How Do I LoadThe Files?
PSR-0 and the modern autoloader
Composer Generates A
Autoload File For AllYour
Dependencies
vendor/autoload.php
Types Of Autoloading
PSR-4 is the recommended way
Types Of Autoloading
PSR-4 is the recommended way
Types Of Autoloading
PSR-0 auto loading
PSR-4 is the recommended way
Types Of Autoloading
PSR-0 auto loading
PEAR packages and other libraries
PSR-4 is the recommended way
Types Of Autoloading
PSR-0 auto loading
PEAR packages and other libraries
PHP Functions and helpers
PSR What?
PHP FIG: PHP Framework Interop Group
PSR-0:Autoloading Standard

PSR-1: Basic Coding Standard

PSR-2: Coding Style Guide

PSR-3: Logger Interface

PSR-4: Improved Autoloading:
http://www.php-fig.org/
PSR What?
PHP FIG: PHP Framework Interop Group
PSR-0:Autoloading Standard

PSR-1: Basic Coding Standard

PSR-2: Coding Style Guide

PSR-3: Logger Interface

PSR-4: Improved Autoloading:
http://www.php-fig.org/
Post Standards Recommendation
OptimisingThe Autoloader
• Adding huge library slows down	

• It calls file_exists every time
OptimisingThe Autoloader
• Adding huge library slows down	

• It calls file_exists every time
$ composer dump-autoload -o
OptimisingThe Autoloader
• Adding huge library slows down	

• It calls file_exists every time
$ composer dump-autoload -o
OptimisingThe Autoloader
• Adding huge library slows down	

• It calls file_exists every time
$ composer dump-autoload -o
Optimize flag
OptimisingThe Autoloader
• Adding huge library slows down	

• It calls file_exists every time
$ composer dump-autoload -o
Optimize flag
A bit slower, but performance boost
I Am Developing A Library
How Composer can spread my library around?
https://packagist.org/about

http://semver.org/
https://packagist.org/about

http://semver.org/
Name of the library
https://packagist.org/about

http://semver.org/
Name of the library
Description
https://packagist.org/about

http://semver.org/
Name of the library
Description
tag
https://packagist.org/about

http://semver.org/
Name of the library
Description
tag
About you
https://packagist.org/about

http://semver.org/
Name of the library
Description
tag
About you
Autoloader type
I Have A Private Repository
Will it work if I am developing applications in-house?
• Composer 	

• VCS	

• PEAR
https://getcomposer.org/doc/05-repositories.md
Find Out More
http://getcomposer.org	

https://packagist.org	

https://github.com/composer	

composer-dev google group	

#composer & #composer-dev
Can I Use Composer with
WordPress?
http://wpackagist.org/	

http://composer.rarst.net/resources
Thats All
Tareq Hasan
@tareq_cse
Founder, Lead Developer - weDevs
http://tareq.weDevs.com
http://wedevs.com
Thanks

Contenu connexe

Tendances

Groovy - Grails as a modern scripting language for Web applications
Groovy - Grails as a modern scripting language for Web applicationsGroovy - Grails as a modern scripting language for Web applications
Groovy - Grails as a modern scripting language for Web applicationsIndicThreads
 
mod_php vs FastCGI vs FPM vs CLI
mod_php vs FastCGI vs FPM vs CLImod_php vs FastCGI vs FPM vs CLI
mod_php vs FastCGI vs FPM vs CLIJacques Woodcock
 
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...Ortus Solutions, Corp
 
Re-imaginging CakePHP
Re-imaginging CakePHPRe-imaginging CakePHP
Re-imaginging CakePHPGraham Weldon
 
PSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressivePSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressiveMilad Arabi
 
Performance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPPerformance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPMax Romanovsky
 
CakePHP - The Path to 2.0
CakePHP - The Path to 2.0CakePHP - The Path to 2.0
CakePHP - The Path to 2.0Graham Weldon
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011Graham Weldon
 
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian LuszczymakMagento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian LuszczymakMeet Magento Spain
 
Building Open-Source React Components
Building Open-Source React ComponentsBuilding Open-Source React Components
Building Open-Source React ComponentsZack Argyle
 
Building Open-source React Components
Building Open-source React ComponentsBuilding Open-source React Components
Building Open-source React ComponentsZack Argyle
 
PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traitsPHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traitsGraham Weldon
 
Zend expressive workshop
Zend expressive workshopZend expressive workshop
Zend expressive workshopAdam Culp
 
Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13DanWooster1
 

Tendances (20)

composer_talk_20160209
composer_talk_20160209composer_talk_20160209
composer_talk_20160209
 
Groovy - Grails as a modern scripting language for Web applications
Groovy - Grails as a modern scripting language for Web applicationsGroovy - Grails as a modern scripting language for Web applications
Groovy - Grails as a modern scripting language for Web applications
 
mod_php vs FastCGI vs FPM vs CLI
mod_php vs FastCGI vs FPM vs CLImod_php vs FastCGI vs FPM vs CLI
mod_php vs FastCGI vs FPM vs CLI
 
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...
CBDW2014- Intro to CommandBox; The ColdFusion CLI, Package Manager, and REPL ...
 
Re-imaginging CakePHP
Re-imaginging CakePHPRe-imaginging CakePHP
Re-imaginging CakePHP
 
Composer
ComposerComposer
Composer
 
PSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressivePSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend Expressive
 
XDebug For php debugging
XDebug For php debuggingXDebug For php debugging
XDebug For php debugging
 
Performance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPPerformance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHP
 
CakePHP - The Path to 2.0
CakePHP - The Path to 2.0CakePHP - The Path to 2.0
CakePHP - The Path to 2.0
 
Composer Helpdesk
Composer HelpdeskComposer Helpdesk
Composer Helpdesk
 
Phalcon - Giant Killer
Phalcon - Giant KillerPhalcon - Giant Killer
Phalcon - Giant Killer
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011
 
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian LuszczymakMagento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
 
Building Open-Source React Components
Building Open-Source React ComponentsBuilding Open-Source React Components
Building Open-Source React Components
 
Building Open-source React Components
Building Open-source React ComponentsBuilding Open-source React Components
Building Open-source React Components
 
PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traitsPHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traits
 
Zend expressive workshop
Zend expressive workshopZend expressive workshop
Zend expressive workshop
 
Automate Yo' Self
Automate Yo' SelfAutomate Yo' Self
Automate Yo' Self
 
Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13Upstate CSCI 450 PHP Chapters 5, 12, 13
Upstate CSCI 450 PHP Chapters 5, 12, 13
 

En vedette

Composer - Package Management for PHP. Silver Bullet?
Composer - Package Management for PHP. Silver Bullet?Composer - Package Management for PHP. Silver Bullet?
Composer - Package Management for PHP. Silver Bullet?Kirill Chebunin
 
Composer: putting dependencies on the score
Composer: putting dependencies on the scoreComposer: putting dependencies on the score
Composer: putting dependencies on the scoreRafael Dohms
 
An open future: my LMS wishlist
An open future: my LMS wishlistAn open future: my LMS wishlist
An open future: my LMS wishlistAndrew Preater
 
Managing Preservation without a Preservation Librarian
Managing Preservation without a Preservation LibrarianManaging Preservation without a Preservation Librarian
Managing Preservation without a Preservation LibrarianMichele Stricker
 
Composer The Right Way - 010PHP
Composer The Right Way - 010PHPComposer The Right Way - 010PHP
Composer The Right Way - 010PHPRafael Dohms
 
Library management system
Library management systemLibrary management system
Library management systemNi
 
Library management system
Library management systemLibrary management system
Library management systemParesh Gosavi
 
Global educational consultancies directory
Global educational consultancies directoryGlobal educational consultancies directory
Global educational consultancies directoryJaslynn joan
 
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)TheEnergyNews
 
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed Enel
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed EnelFlavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed Enel
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed EnelPhiNet Social Media Communication
 
التقلبات المفاجئة
التقلبات المفاجئةالتقلبات المفاجئة
التقلبات المفاجئةRadwa Radwan
 
Chiffres clés de l'automédication 2010
Chiffres clés de l'automédication 2010Chiffres clés de l'automédication 2010
Chiffres clés de l'automédication 2010Morgan REMOLEUR
 
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...accenture
 

En vedette (20)

Composer - Package Management for PHP. Silver Bullet?
Composer - Package Management for PHP. Silver Bullet?Composer - Package Management for PHP. Silver Bullet?
Composer - Package Management for PHP. Silver Bullet?
 
Composer: putting dependencies on the score
Composer: putting dependencies on the scoreComposer: putting dependencies on the score
Composer: putting dependencies on the score
 
An open future: my LMS wishlist
An open future: my LMS wishlistAn open future: my LMS wishlist
An open future: my LMS wishlist
 
Managing Preservation without a Preservation Librarian
Managing Preservation without a Preservation LibrarianManaging Preservation without a Preservation Librarian
Managing Preservation without a Preservation Librarian
 
Composer The Right Way - 010PHP
Composer The Right Way - 010PHPComposer The Right Way - 010PHP
Composer The Right Way - 010PHP
 
Library management system
Library management systemLibrary management system
Library management system
 
Library management system
Library management systemLibrary management system
Library management system
 
ahmed
ahmedahmed
ahmed
 
Frank allen
Frank allenFrank allen
Frank allen
 
Blue Ocean Strategy Case Seats2meet
Blue Ocean Strategy Case Seats2meetBlue Ocean Strategy Case Seats2meet
Blue Ocean Strategy Case Seats2meet
 
Sharing motivation
Sharing motivationSharing motivation
Sharing motivation
 
8.QAI-CMMI Dev-V1.3
8.QAI-CMMI Dev-V1.38.QAI-CMMI Dev-V1.3
8.QAI-CMMI Dev-V1.3
 
Global educational consultancies directory
Global educational consultancies directoryGlobal educational consultancies directory
Global educational consultancies directory
 
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)
Flavio Cattaneo: Nuovi massimi storici per Terna (La Stampa)
 
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed Enel
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed EnelFlavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed Enel
Flavio Cattaneo: La scommessa (proibita) di Terna che imbarazza Eni ed Enel
 
التقلبات المفاجئة
التقلبات المفاجئةالتقلبات المفاجئة
التقلبات المفاجئة
 
Chiffres clés de l'automédication 2010
Chiffres clés de l'automédication 2010Chiffres clés de l'automédication 2010
Chiffres clés de l'automédication 2010
 
ChemSpider -Connecting and Curating Online Chemistry Resources
ChemSpider -Connecting and Curating Online Chemistry ResourcesChemSpider -Connecting and Curating Online Chemistry Resources
ChemSpider -Connecting and Curating Online Chemistry Resources
 
Xero
XeroXero
Xero
 
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...
Accenture 2014 College Graduate Employment Survey: What Awaits Grads in the W...
 

Similaire à Composer - The missing package manager for PHP

Composer Lightning Talk
Composer Lightning TalkComposer Lightning Talk
Composer Lightning TalkEric Johnson
 
Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with ComposerJason Grimes
 
Composer & Drupal
Composer & DrupalComposer & Drupal
Composer & Drupaldrubb
 
PHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudPHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudSalesforce Developers
 
Composer the Right Way - MM16NL
Composer the Right Way - MM16NLComposer the Right Way - MM16NL
Composer the Right Way - MM16NLRafael Dohms
 
Php Dependency Management with Composer ZendCon 2017
Php Dependency Management with Composer ZendCon 2017Php Dependency Management with Composer ZendCon 2017
Php Dependency Management with Composer ZendCon 2017Clark Everetts
 
Lighning Talk: composer repositories
Lighning Talk: composer repositoriesLighning Talk: composer repositories
Lighning Talk: composer repositoriesBryan Agee
 
Shared Object images in Docker: What you need is what you want.
Shared Object images in Docker: What you need is what you want.Shared Object images in Docker: What you need is what you want.
Shared Object images in Docker: What you need is what you want.Workhorse Computing
 
How to deploy PHP projects with docker
How to deploy PHP projects with dockerHow to deploy PHP projects with docker
How to deploy PHP projects with dockerRuoshi Ling
 
Using Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websitesUsing Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websitesAnna Ladoshkina
 
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014biicode
 
Conhecendo o-composer-por-nandokstronet
Conhecendo o-composer-por-nandokstronetConhecendo o-composer-por-nandokstronet
Conhecendo o-composer-por-nandokstronetCode Experts Learning
 

Similaire à Composer - The missing package manager for PHP (20)

Composer
ComposerComposer
Composer
 
Composer Lightning Talk
Composer Lightning TalkComposer Lightning Talk
Composer Lightning Talk
 
Running Symfony
Running SymfonyRunning Symfony
Running Symfony
 
Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with Composer
 
Composer
ComposerComposer
Composer
 
Composer
ComposerComposer
Composer
 
Composer & Drupal
Composer & DrupalComposer & Drupal
Composer & Drupal
 
PHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudPHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the Cloud
 
Composer
ComposerComposer
Composer
 
Composer: Dependency Manager for PHP
Composer: Dependency Manager for PHPComposer: Dependency Manager for PHP
Composer: Dependency Manager for PHP
 
Composer the Right Way - MM16NL
Composer the Right Way - MM16NLComposer the Right Way - MM16NL
Composer the Right Way - MM16NL
 
Php Dependency Management with Composer ZendCon 2017
Php Dependency Management with Composer ZendCon 2017Php Dependency Management with Composer ZendCon 2017
Php Dependency Management with Composer ZendCon 2017
 
Lighning Talk: composer repositories
Lighning Talk: composer repositoriesLighning Talk: composer repositories
Lighning Talk: composer repositories
 
Shared Object images in Docker: What you need is what you want.
Shared Object images in Docker: What you need is what you want.Shared Object images in Docker: What you need is what you want.
Shared Object images in Docker: What you need is what you want.
 
How to deploy PHP projects with docker
How to deploy PHP projects with dockerHow to deploy PHP projects with docker
How to deploy PHP projects with docker
 
Using Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websitesUsing Composer to create manageable WordPress websites
Using Composer to create manageable WordPress websites
 
Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014Dependencies Managers in C/C++. Using stdcpp 2014
Dependencies Managers in C/C++. Using stdcpp 2014
 
Conhecendo o-composer-por-nandokstronet
Conhecendo o-composer-por-nandokstronetConhecendo o-composer-por-nandokstronet
Conhecendo o-composer-por-nandokstronet
 
Mastering composer
Mastering composerMastering composer
Mastering composer
 
PHP selber bauen
PHP selber bauenPHP selber bauen
PHP selber bauen
 

Plus de Tareq Hasan

Grow Your Career with WordPress
Grow Your Career with WordPressGrow Your Career with WordPress
Grow Your Career with WordPressTareq Hasan
 
Caching in WordPress
Caching in WordPressCaching in WordPress
Caching in WordPressTareq Hasan
 
How to Submit a plugin to WordPress.org Repository
How to Submit a plugin to WordPress.org RepositoryHow to Submit a plugin to WordPress.org Repository
How to Submit a plugin to WordPress.org RepositoryTareq Hasan
 
WordPress Theme & Plugin development best practices - phpXperts seminar 2011
WordPress Theme & Plugin development best practices - phpXperts seminar 2011WordPress Theme & Plugin development best practices - phpXperts seminar 2011
WordPress Theme & Plugin development best practices - phpXperts seminar 2011Tareq Hasan
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.pptTareq Hasan
 
02 c++ Array Pointer
02 c++ Array Pointer02 c++ Array Pointer
02 c++ Array PointerTareq Hasan
 
01 c++ Intro.ppt
01 c++ Intro.ppt01 c++ Intro.ppt
01 c++ Intro.pptTareq Hasan
 
Algorithm: priority queue
Algorithm: priority queueAlgorithm: priority queue
Algorithm: priority queueTareq Hasan
 
Algorithm: Quick-Sort
Algorithm: Quick-SortAlgorithm: Quick-Sort
Algorithm: Quick-SortTareq Hasan
 
Java: Inheritance
Java: InheritanceJava: Inheritance
Java: InheritanceTareq Hasan
 
Java: Introduction to Arrays
Java: Introduction to ArraysJava: Introduction to Arrays
Java: Introduction to ArraysTareq Hasan
 
Java: Class Design Examples
Java: Class Design ExamplesJava: Class Design Examples
Java: Class Design ExamplesTareq Hasan
 

Plus de Tareq Hasan (20)

Grow Your Career with WordPress
Grow Your Career with WordPressGrow Your Career with WordPress
Grow Your Career with WordPress
 
Caching in WordPress
Caching in WordPressCaching in WordPress
Caching in WordPress
 
How to Submit a plugin to WordPress.org Repository
How to Submit a plugin to WordPress.org RepositoryHow to Submit a plugin to WordPress.org Repository
How to Submit a plugin to WordPress.org Repository
 
WordPress Theme & Plugin development best practices - phpXperts seminar 2011
WordPress Theme & Plugin development best practices - phpXperts seminar 2011WordPress Theme & Plugin development best practices - phpXperts seminar 2011
WordPress Theme & Plugin development best practices - phpXperts seminar 2011
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt
 
02 c++ Array Pointer
02 c++ Array Pointer02 c++ Array Pointer
02 c++ Array Pointer
 
01 c++ Intro.ppt
01 c++ Intro.ppt01 c++ Intro.ppt
01 c++ Intro.ppt
 
chapter22.ppt
chapter22.pptchapter22.ppt
chapter22.ppt
 
chapter - 6.ppt
chapter - 6.pptchapter - 6.ppt
chapter - 6.ppt
 
Algorithm.ppt
Algorithm.pptAlgorithm.ppt
Algorithm.ppt
 
chapter-8.ppt
chapter-8.pptchapter-8.ppt
chapter-8.ppt
 
chapter23.ppt
chapter23.pptchapter23.ppt
chapter23.ppt
 
chapter24.ppt
chapter24.pptchapter24.ppt
chapter24.ppt
 
Algorithm: priority queue
Algorithm: priority queueAlgorithm: priority queue
Algorithm: priority queue
 
Algorithm: Quick-Sort
Algorithm: Quick-SortAlgorithm: Quick-Sort
Algorithm: Quick-Sort
 
Java: GUI
Java: GUIJava: GUI
Java: GUI
 
Java: Inheritance
Java: InheritanceJava: Inheritance
Java: Inheritance
 
Java: Exception
Java: ExceptionJava: Exception
Java: Exception
 
Java: Introduction to Arrays
Java: Introduction to ArraysJava: Introduction to Arrays
Java: Introduction to Arrays
 
Java: Class Design Examples
Java: Class Design ExamplesJava: Class Design Examples
Java: Class Design Examples
 

Dernier

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 

Dernier (20)

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 

Composer - The missing package manager for PHP