PHP Composer Basics

18
Let Composer Do It Slides' Link: http://j.mp/composersyl

description

Explains basic of Composer (PHP).

Transcript of PHP Composer Basics

Page 1: PHP Composer Basics

Let ComposerDo It

Slides' Link: http://j.mp/composersyl

Page 2: PHP Composer Basics

Me?Muhammad Usman

Work mostly with PHP Accounting Graduate Live in Kalighat, Sylhet, Bangladesh.

http://usman.it

Page 3: PHP Composer Basics

Work for Vegan Cutshttp://VeganCuts.com

Page 4: PHP Composer Basics

Working on a SAAS for Vegan Cuts too

http://CreateAudience.com

Page 5: PHP Composer Basics

Open Source ( )http://GitHub.com/usmanhalalit

Page 6: PHP Composer Basics

What is Composer?

ComposerisadependencymanagerforPHP.

YouusemanyPHPlibrariesinyourproject,right?

Theseareyourproject'sdependencies.

Bundlerisforruby,npmisfornode.js,ComposerisforPHP.

Page 7: PHP Composer Basics

Didn't understand?Noproblem,alldohaveproblemsunderstandingforthefirst

time,includingme.

Page 8: PHP Composer Basics

How would I explain Composerto my wife?

You'regoingtocookdeliciousBiryani.Soyouneedrice,spices,onions,...?ThesearedependenciesofBiryani.Youwantmetobuyandmanagethesedependenciesforyou?Sonowyoucanjustcallthesedependencieswhenneeded.Congrats!IamyourComposer.

Page 9: PHP Composer Basics

Theory behind packagemanagers

Letsnotalwaysreinventthewheel.Idependonyou,someoneelsedependsonmeandthenestinggoesfurther.Wecanusebitsandpieces.

Page 10: PHP Composer Basics

Enough with theories.

Page 11: PHP Composer Basics

Installation (requires Git mostly)

https://getcomposer.org/

*nixcurl-sShttps://getcomposer.org/installer|phpmvcomposer.phar/usr/local/bin/composer

WindowsDownloadandrun andsetupyourPATHsothat

youcanjustcallcomposerfromanydirectoryinyourcommandline.

https://getcomposer.org/Composer-Setup.exe

Page 12: PHP Composer Basics

Packagisthttps://packagist.org/

ThestoreforBiryanimaterials:D

Searchforpackages/libraries.

Selecttheversionyouwant.

Page 13: PHP Composer Basics

Install a package (go to your project root)

composerrequiremonolog/monolog

Basiccomposer.jsonfile

Updateorinstalldependenciescomposerupdate

Page 14: PHP Composer Basics

The vendor directory

Page 15: PHP Composer Basics

autoload.phprequire'vendor/autoload.php';

Alllibraryfilesareloaded*,theycanbeusednow.

Performance issues? Nope.*Filesarelazyloaded.

Page 16: PHP Composer Basics

You can use autoload for youown classes/files

PSR-4autoloadClassmapautoload.Filesautoload

Page 17: PHP Composer Basics

Exhausted?

Page 18: PHP Composer Basics

Your questions please!

Peace!

Slides Link: http://j.mp/composersyl