diff --git a/awesome-php.md b/awesome-php.md index 235fdc9..22a87af 100644 --- a/awesome-php.md +++ b/awesome-php.md @@ -2,49 +2,82 @@ A list of amazingly awesome PHP libraries that you should consider using (and some other shiny extras). + +## Composer + * [Composer](http://getcomposer.org/)/[Packagist](http://packagist.org/) - A package and dependency manager. * [Composer Installers](https://github.com/composer/installers) - A multi framework Composer library installer. + +## Dependency Management + * [Satis](https://github.com/composer/satis) - A static Composer repository generator. +* [Composition](https://github.com/bamarni/composition) - A library to check your Composer environment at runtime. +* [Poser](https://github.com/FrenkyNet/Poser) - A Composer class aliasing library. +* [Version](https://github.com/kherge/Version) - A parsing and comparison library for semantic versioning. +* [NameSpacer](https://github.com/ralphschindler/Namespacer) - A library to convert from underscores to namespaces. + +## Frameworks + * [Symfony2](http://symfony.com/) - A framework comprised of individual components. * [Zend Framework 2](http://framework.zend.com) - Another framework comprised of individual components. * [Laravel 4](https://github.com/laravel/framework) - A simple PHP framework. * [Lithium](http://lithify.me/) - Another framework of components. + +## Framework Components + * [Symfony2 Components](http://symfony.com/doc/master/components/index.html) - The components that make Symfony2. * [Zend Framework 2 Components](https://packages.zendframework.com/) - The components that make ZF2. * [Aura Components](http://auraphp.github.com/) - A package of PHP 5.4 components. + +## Micro Frameworks + * [Silex](http://silex.sensiolabs.org/) - A micro framework built around Symfony2 components. * [Silex Skeleton](https://github.com/fabpot/Silex-Skeleton) - A skeleton for Silex. * [Slim](http://www.slimframework.com/) - Another simple micro framework. * [Bullet PHP](http://bulletphp.com/) - A mico framework for building REST APIs. + +## Templating + * [Twig](http://twig.sensiolabs.org/) - A comprehensive templating language. * [Twig Cache Extension](https://github.com/asm89/twig-cache-extension) - A template fragment cache library for Twig. * [Mustache](https://github.com/bobthecow/mustache.php) - A PHP implementation of the Mustache template language. * [Phly Mustache](https://github.com/weierophinney/phly_mustache) - Another PHP implementation of the Mustache template language. * [MtHaml](https://github.com/arnaud-lb/MtHaml) - A PHP implementation of the HAML template language. +* [Lex](https://github.com/pyrocms/lex) - A lightweight template parser. + +## HTTP + +* [Guzzle](http://guzzlephp.org/) - A HTTP client. +* [Buzz](https://github.com/kriswallsmith/Buzz) - Another HTTP client. +* [Goutte](https://github.com/fabpot/Goutte) - A simple web scraper. + +## URL + +* [Purl](https://github.com/jwage/purl) - A URL manipulation library. +* [PHP Domain Parser](https://github.com/jeremykendall/php-domain-parser) - A domain suffix parser library. + +## Email + * [SwiftMailer](http://swiftmailer.org/) - A mailer solution. +* [Fetch](https://github.com/tedivm/Fetch) - An IMAP library. +* [Email Reply Parser](https://github.com/willdurand/EmailReplyParser) - An email reply parser library. + +## Dependency Injection + * [Pimple](http://pimple.sensiolabs.org/) - A tiny dependency injection container. * [Auryn](https://github.com/rdlowrey/Auryn) - Another dependency injection container. * [Di](https://github.com/orno/di) - Another flexible dependency injection container. * [PHP DI](http://mnapoli.github.com/PHP-DI/) - A dependency injection implementation using annotations. -* [Doctrine](http://www.doctrine-project.org/) - A comprehensive DBAL and ORM. -* [Doctrine Migrations](http://docs.doctrine-project.org/projects/doctrine-migrations/en/latest/toc.html) - A migration library for Doctrine. -* [Migrations](https://github.com/icomefromthenet/Migrations) - A migration management library. -* [Phinx](https://github.com/robmorgan/phinx) - Another database migration library. -* [Propel](http://www.propelorm.org/) - A fast ORM. -* [Spot](https://github.com/vlucas/Spot) - A MySQL datamapper ORM. -* [Goutte](https://github.com/fabpot/Goutte) - A simple web scraper. -* [Assetic](https://github.com/kriswallsmith/assetic) - An asset manager pipeline library. -* [Pipe](https://github.com/CHH/pipe) - Another asset manager pipeline library. -* [Munee](https://github.com/meenie/munee) - An asset optimiser library. + +## Imagery + * [Imagine](http://imagine.readthedocs.org/en/latest/index.html) - An image manipulation library. * [PHP Image Workshop](https://github.com/Sybio/ImageWorkshop) - Another image manipulation library. * [GIF Frame Extractor](https://github.com/Sybio/GifFrameExtractor) - A library to extract GIF animation frame information. * [GIF Creator](https://github.com/Sybio/GifCreator) - A library to create GIF animations from multiple images. -* [Monolog](https://github.com/Seldaek/monolog) - A comprehensive logger. -* [Behat](http://behat.org/) - A Behaviour Driven Development framework. -* [Mink](http://mink.behat.org/) - Web acceptance testing. -* [Guzzle](http://guzzlephp.org/) - A HTTP client. -* [Buzz](https://github.com/kriswallsmith/Buzz) - Another HTTP client. + +## Testing + * [PHPUnit](https://github.com/sebastianbergmann/phpunit) - A unit testing framework. * [RunkitTestCase](https://github.com/kherge/RunkitTestCase) - A library for creating PHPUnit test cases that use runkit. * [ParaTest](https://github.com/brianium/paratest) - A parallel testing library for PHPUnit. @@ -54,113 +87,185 @@ A list of amazingly awesome PHP libraries that you should consider using (and so * [Mockery](https://github.com/padraic/mockery) - A mock object library for testing. * [Phake](https://github.com/mlively/Phake) - Another mock object library for testing. * [Parody](https://github.com/dotink/Parody) - Yet another mock object library for testing. -* [KnpMenu](https://github.com/KnpLabs/KnpMenu) - A menu library. -* [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer. -* [Snappy](https://github.com/KnpLabs/snappy) - A PDF and image generation library (uses [WKHTMLToPDF](https://github.com/antialize/wkhtmltopdf)). -* [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library. -* [GeoCoder](http://geocoder-php.org/) - A geocoding library. -* [GeoTools](https://github.com/toin0u/Geotools) - A library of geo-related tools. +* [Sismo](http://sismo.sensiolabs.org/) - A continuous testing server library. * [Faker](https://github.com/fzaninotto/Faker) - A fake data generator library. -* [Spork](https://github.com/kriswallsmith/spork) - A process forking library. -* [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter. -* [React](https://github.com/reactphp/react) - An event driven non-blocking I/O library. -* [Événement](https://github.com/igorw/evenement) - An event dispatcher library. -* [FuelPHP Event](https://github.com/fuelphp/event) - Another event dispatcher library. +* [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library. +* [Behat](http://behat.org/) - A Behaviour Driven Development framework. +* [Mink](http://mink.behat.org/) - Web acceptance testing. + +## Documentation + * [Sami](https://github.com/fabpot/Sami) - An API documentation generator. * [PHP Documentor 2](https://github.com/phpDocumentor/phpDocumentor2) - Another documentation generator. + +## Security + +* [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter. +* [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings. +* [SecurityMultiTool](https://github.com/padraic/SecurityMultiTool) - A PHP security library. +* [Password Compat](https://github.com/ircmaxell/password_compat) - A compatibility library for the new PHP 5.5 password functions. +* [BCrypt](https://github.com/kherge/Bcrypt) - A BCrypt password hashing library. +* [PHPAss](http://www.openwall.com/phpass/) - A portable password hashing framework. +* [PHP Password Lib](https://github.com/ircmaxell/PHP-PasswordLib) - A library for generating and validating passwords. +* [Password Policy](https://github.com/ircmaxell/password-policy) - A password policy library for PHP and JavaScript. +* [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library. +* [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library. + +## Build Tools + * [Go](https://github.com/herrera-io/php-go) - A simple PHP build tool. * [Bob](https://github.com/CHH/bob) - A simple project automation tool. * [Phake](https://github.com/jaz303/phake) - A rake PHP clone library. -* [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility. -* [PHPAss](http://www.openwall.com/phpass/) - A portable password hashing framework. -* [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library. -* [PHP Password Lib](https://github.com/ircmaxell/PHP-PasswordLib) - A library for generating and validating passwords. -* [Password Compat](https://github.com/ircmaxell/password_compat) - A library that provides compatibility with the new PHP 5.5 password functions. -* [Password Policy](https://github.com/ircmaxell/password-policy) - A password policy library for PHP and JavaScript. -* [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings. -* [SecurityMultiTool](https://github.com/padraic/SecurityMultiTool) - A PHP security library. * [Box](https://github.com/kherge/Box) - A utility to build PHAR files. -* [Wisdom](https://github.com/kherge/Wisdom) - A library for loading config data. -* [GetOpt](https://github.com/ulrichsg/getopt-php) - A command line opt parser. -* [OptParse](https://github.com/CHH/optparse) - Another command line opt parser. -* [Commando](https://github.com/nategood/commando) - Another simple command line opt parser. -* [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library. -* [OmniPay](https://github.com/adrianmacneil/omnipay) - A framework agnostic multi-gateway payment processing library. -* [Ruler](https://github.com/bobthecow/Ruler) - A simple stateless production rules engine. + +## Asset Management + +* [Assetic](https://github.com/kriswallsmith/assetic) - An asset manager pipeline library. +* [Pipe](https://github.com/CHH/pipe) - Another asset manager pipeline library. +* [Munee](https://github.com/meenie/munee) - An asset optimiser library. +* [JShrink](https://github.com/tedivm/JShrink) - A JavaScript minifier library. + +## Geolocation + +* [GeoCoder](http://geocoder-php.org/) - A geocoding library. +* [GeoTools](https://github.com/toin0u/Geotools) - A library of geo-related tools. + +## Date and Time + * [Carbon](https://github.com/briannesbitt/Carbon) - A simple DateTime API extension. * [Datum](https://github.com/dandoescode/datum) - A fork of the Carbon DateTime API extension. * [ExpressiveDate](https://github.com/jasonlewis/expressive-date) - Another DateTime API extension. -* [Upload](https://github.com/codeguy/Upload) - A library for handling file uploads and validation. -* [Sismo](http://sismo.sensiolabs.org/) - A continuous testing server library. -* [Fetch](https://github.com/tedivm/Fetch) - An IMAP library. -* [Email Reply Parser](https://github.com/willdurand/EmailReplyParser) - An email reply parser library. -* [Lex](https://github.com/pyrocms/lex) - A lightweight template parser. -* [Sslurp](https://github.com/EvanDotPro/Sslurp) - A library that makes dealing with SSL suck less. -* [Composition](https://github.com/bamarni/composition) - A library to check your Composer environment at runtime. -* [Entities](https://github.com/kherge/Entities) - A Doctrine ORM service provider for Silex. -* [Elf](https://github.com/kherge/Elf) - A collection of helpers for the Symfony Console component. -* [Amend](https://github.com/kherge/Amend) - A Symfony Console helper and command set for updating and upgrading applications. -* [Doctrine Extensions](https://github.com/l3pp4rd/DoctrineExtensions) - A collection of Doctrine behavioural extensions. -* [Color Jizz](https://github.com/mikeemoo/ColorJizz-PHP) - A library for manipulating and converting colours. -* [Poser](https://github.com/FrenkyNet/Poser) - A Composer class aliasing library. -* [Version](https://github.com/kherge/Version) - A parsing and comparison library for semantic versioning. -* [Respect Validate](https://github.com/Respect/Validation) - A simple validation library. -* [Valitron](https://github.com/vlucas/valitron) - Another validation library. -* [BCrypt](https://github.com/kherge/Bcrypt) - A BCrypt password hashing library. -* [ShellWrap](https://github.com/MrRio/shellwrap) - A simple command line wrapper library. -* [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library. -* [Cron Expression](https://github.com/mtdowling/cron-expression) - A library to calculate cron run dates. -* [OPAuth](https://github.com/uzyn/opauth) - A multi-provider authentication framework. +* [CalendR](http://yohan.giarel.li/CalendR) - A calendar management library. + +## Event + +* [React](https://github.com/reactphp/react) - An event driven non-blocking I/O library. * [Ratchet](https://github.com/cboden/Ratchet) - A web socket library. -* [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library. -* [PHP Option](https://github.com/schmittjoh/php-option) An option type library. -* [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library. -* [Metrics](https://github.com/beberlei/metrics) - A simple metrics API library. -* [JShrink](https://github.com/tedivm/JShrink) - A JavaScript minifier library. -* [Ardent](https://github.com/morrisonlevi/Ardent) - A library of data structures. -* [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library. +* [Événement](https://github.com/igorw/evenement) - An event dispatcher library. +* [FuelPHP Event](https://github.com/fuelphp/event) - Another event dispatcher library. + +## Logging + +* [Monolog](https://github.com/Seldaek/monolog) - A comprehensive logger. + +## Payment + +* [OmniPay](https://github.com/adrianmacneil/omnipay) - A framework agnostic multi-gateway payment processing library. + + +## PDF + +* [Snappy](https://github.com/KnpLabs/snappy) - A PDF and image generation library. +* [WKHTMLToPDF](https://github.com/antialize/wkhtmltopdf) - A tool to convert HTML to PDF. + +## ORM and Datamapping + +* [Doctrine](http://www.doctrine-project.org/) - A comprehensive DBAL and ORM. +* [Doctrine Migrations](http://docs.doctrine-project.org/projects/doctrine-migrations/en/latest/toc.html) - A migration library for Doctrine. +* [Doctrine Extensions](https://github.com/l3pp4rd/DoctrineExtensions) - A collection of Doctrine behavioural extensions. +* [Propel](http://www.propelorm.org/) - A fast ORM. +* [Spot](https://github.com/vlucas/Spot) - A MySQL datamapper ORM. +* [Migrations](https://github.com/icomefromthenet/Migrations) - A migration management library. +* [Phinx](https://github.com/robmorgan/phinx) - Another database migration library. +* [Entities](https://github.com/kherge/Entities) - A Doctrine ORM service provider for Silex. + +## NoSQL + * [MongoQB](https://github.com/alexbilbie/MongoQB) - A MongoDB query builder library. * [Monga](https://github.com/FrenkyNet/Monga) - A MongoDB abstraction library. * [Predis](https://github.com/nrk/predis) - A feature complete Redis library. -* [Sabre VObject](https://github.com/evert/sabre-vobject) - A library for parsing VCard and iCalendar objects. -* [OAuth2](https://github.com/lncd/OAuth2) - An OAuth2 authentication server, resource server and client library. -* [PHP oAuthLib](https://github.com/Lusitanian/PHPoAuthLib) - Another OAuth library. -* [Annotations](https://github.com/doctrine/annotations) - An annotations library (part of Doctrine). -* [Cache](https://github.com/doctrine/cache) - A caching library (part of Doctrine). -* [Stash](https://github.com/tedivm/Stash) - Another library for caching. -* [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library. -* [PHP Collections](https://github.com/schmittjoh/php-collection) - A simple collections library. -* [PHP Domain Parser](https://github.com/jeremykendall/php-domain-parser) - A domain suffix parser library. -* [PHP File Locator](https://github.com/herrera-io/php-file-locator) - A library for locating files in large projects. -* [Elastica](https://github.com/ruflin/Elastica) - A client library for [Elastic Search](http://www.elasticsearch.org/). -* [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data. -* [Numbers PHP](https://github.com/powder96/numbers.php) - A library for working with numbers. -* [Patchwork UTF-8](https://github.com/nicolas-grekas/Patchwork-UTF8) - A portable library for working with UTF-8 strings. + +## Command Line + * [Boris](https://github.com/d11wtq/boris) - A tiny PHP REPL. -* [LiteCQRS](https://github.com/beberlei/litecqrs-php) - A CQRS (Command Query Responsibility Separation) library. -* [NameSpacer](https://github.com/ralphschindler/Namespacer) - A library to convert from underscores to namespaces. -* [Purl](https://github.com/jwage/purl) - A URL manipulation library. -* [S3 Stream Wrapper](https://github.com/gwkunze/S3StreamWrapper) - A stream wrapper library for Amazon S3. +* [GetOpt](https://github.com/ulrichsg/getopt-php) - A command line opt parser. +* [OptParse](https://github.com/CHH/optparse) - Another command line opt parser. +* [Commando](https://github.com/nategood/commando) - Another simple command line opt parser. +* [Elf](https://github.com/kherge/Elf) - A collection of helpers for the Symfony Console component. +* [Amend](https://github.com/kherge/Amend) - A Symfony Console helper and command set for updating and upgrading applications. +* [Cron Expression](https://github.com/mtdowling/cron-expression) - A library to calculate cron run dates. +* [ShellWrap](https://github.com/MrRio/shellwrap) - A simple command line wrapper library. + +## Authentication + +* [Sentry](https://github.com/cartalyst/sentry) - A framework agnostic authentication & authorisation library. +* [OPAuth](https://github.com/uzyn/opauth) - A multi-provider authentication framework. + +## OAuth + +* [OAuth2](https://github.com/lncd/OAuth2) - An OAuth2 authentication server, resource server and client library. +* [PHP oAuthLib](https://github.com/Lusitanian/PHPoAuthLib) - Another OAuth library. * [TwitterOAuth](https://github.com/ruudk/twitteroauth) - A Twitter OAuth library. -* [Whoops](https://github.com/filp/whoops) - A pretty error handling library. -* [CalendR](http://yohan.giarel.li/CalendR) - A calendar management library. -* [Finite](http://yohan.giarel.li/Finite) - A simple PHP finite state machine. -* [LadyBug](https://github.com/raulfraile/Ladybug) - A dumper library. -* [Plum](https://github.com/aerialls/Plum) - A deployer library. + +## Markup + * [Decoda](http://milesj.me/code/php/decoda) - A lightweight markup parser library. * [PHP Markdown](https://github.com/michelf/php-markdown) - A markdown parser library. * [Dflydev Markdown](https://github.com/dflydev/dflydev-markdown) - Another markdown parser library. -* [ANSI to HTML5](https://github.com/sensiolabs/ansi-to-html) - An ANSI to HTML5 convertor library. -* [Procrastinator](https://github.com/lstrojny/Procrastinator) - A library for running time consuming tasks. -* [Sentry](https://github.com/cartalyst/sentry) - A framework agnostic authentication & authorisation library. -# Official APIs +## Text and Numbers + +* [ANSI to HTML5](https://github.com/sensiolabs/ansi-to-html) - An ANSI to HTML5 convertor library. +* [Patchwork UTF-8](https://github.com/nicolas-grekas/Patchwork-UTF8) - A portable library for working with UTF-8 strings. +* [Numbers PHP](https://github.com/powder96/numbers.php) - A library for working with numbers. +* [Color Jizz](https://github.com/mikeemoo/ColorJizz-PHP) - A library for manipulating and converting colours. + +## Filtering and Validation + +* [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library. +* [Respect Validate](https://github.com/Respect/Validation) - A simple validation library. +* [Valitron](https://github.com/vlucas/valitron) - Another validation library. +* [Upload](https://github.com/codeguy/Upload) - A library for handling file uploads and validation. + +## REST and API + +* [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library. +* [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library. + +## Caching + +* [Cache](https://github.com/doctrine/cache) - A caching library (part of Doctrine). +* [Stash](https://github.com/tedivm/Stash) - Another library for caching. + +## Data + +* [Ardent](https://github.com/morrisonlevi/Ardent) - A library of data structures. +* [PHP Collections](https://github.com/schmittjoh/php-collection) - A simple collections library. + +## Miscellaneous + +* [Spork](https://github.com/kriswallsmith/spork) - A process forking library. +* [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility. +* [KnpMenu](https://github.com/KnpLabs/KnpMenu) - A menu library. +* [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer. +* [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library. +* [Ruler](https://github.com/bobthecow/Ruler) - A simple stateless production rules engine. +* [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data. +* [LiteCQRS](https://github.com/beberlei/litecqrs-php) - A CQRS (Command Query Responsibility Separation) library. +* [S3 Stream Wrapper](https://github.com/gwkunze/S3StreamWrapper) - A stream wrapper library for Amazon S3. +* [Wisdom](https://github.com/kherge/Wisdom) - A library for loading config data. +* [Sslurp](https://github.com/EvanDotPro/Sslurp) - A library that makes dealing with SSL suck less. +* [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library. +* [PHP Option](https://github.com/schmittjoh/php-option) An option type library. +* [Metrics](https://github.com/beberlei/metrics) - A simple metrics API library. +* [Sabre VObject](https://github.com/evert/sabre-vobject) - A library for parsing VCard and iCalendar objects. +* [Annotations](https://github.com/doctrine/annotations) - An annotations library (part of Doctrine). +* [PHP File Locator](https://github.com/herrera-io/php-file-locator) - A library for locating files in large projects. +* [Elastica](https://github.com/ruflin/Elastica) - A client library for [Elastic Search](http://www.elasticsearch.org/). +* [Whoops](https://github.com/filp/whoops) - A pretty error handling library. +* [Finite](http://yohan.giarel.li/Finite) - A simple PHP finite state machine. +* [LadyBug](https://github.com/raulfraile/Ladybug) - A dumper library. +* [Plum](https://github.com/aerialls/Plum) - A deployer library. +* [Procrastinator](https://github.com/lstrojny/Procrastinator) - A library for running time consuming tasks. + + +## Official APIs * [Amazon Web Service SDK](https://github.com/aws/aws-sdk-php) - The official PHP AWS SDK library. * [Stripe](https://github.com/stripe/stripe-php) - The official Stripe PHP library. * [Campaign Monitor](http://campaignmonitor.github.com/createsend-php/) - The official Campaign Monitor PHP library. -# Utilities +## Utilities * [HomeBrew](http://mxcl.github.com/homebrew/) - A package manager for OSX. * [HomeBrew PHP](https://github.com/josegonzalez/homebrew-php) - A PHP tap for HomeBrew. @@ -193,11 +298,13 @@ A list of amazingly awesome PHP libraries that you should consider using (and so * [WebSec IO](http://websec.io/) - A web security community resource. * [Web Advent](http://webadvent.org) - An advent calendar for web developers. * [Programming with Anthony](http://www.youtube.com/playlist?list=PLM-218uGSX3DQ3KsB5NJnuOqPqc5CW2kW) - A video series by Anthony Ferrara. + +## E-Books + * [Scaling PHP Applications](http://www.scalingphpbook.com) - A paid ebook about scaling PHP applications by Steve Corona. * [Grumpy PHPUnit](https://leanpub.com/grumpy-phpunit) - A book about unit testing with PHPUnit by Chris Hartjes. -* [Semantic Versioning](http://semver.org/) - A website explaining semantic versioning. -# Reading +## Reading * [OWASP PHP Security Cheat Sheet](https://www.owasp.org/index.php/PHP_Security_Cheat_Sheet) - A PHP security cheatsheet. * [Seven Ways to Screw Up BCrypt](http://blog.ircmaxell.com/2012/12/seven-ways-to-screw-up-bcrypt.html) - An article about correct BCrypt implementation. @@ -215,6 +322,7 @@ A list of amazingly awesome PHP libraries that you should consider using (and so * [How Big Are PHP Arrays (And Values) Really?](http://nikic.github.com/2011/12/12/How-big-are-PHP-arrays-really-Hint-BIG.html) - An article about array internals. * PHP Source Code for Developers: [1](http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html) [2](http://nikic.github.com/2012/03/16/Understanding-PHPs-internal-function-definitions.html) [3](http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html) [4](http://nikic.github.com/2012/03/28/Understanding-PHPs-internal-array-implementation.html) - A series about the PHP source code. * Collecting Garbage: [1](http://derickrethans.nl/collecting-garbage-phps-take-on-variables.html) [2](http://derickrethans.nl/collecting-garbage-cleaning-up.html) [3](http://derickrethans.nl/collecting-garbage-performance-considerations.html) - A series about the PHP garbage collection internals. +* [Semantic Versioning](http://semver.org/) - A website explaining semantic versioning. * [Composer Primer](http://daylerees.com/composer-primer) - A Composer primer. * [Composer Versioning](https://igor.io/2013/01/07/composer-versioning.html) - An article about Composer versioning. * [Composer Stability Flags](https://igor.io/2013/02/07/composer-stability-flags.html) - An article about Composer stability flags.