awesome-php/awesome-php.md

181 lines
16 KiB
Markdown
Raw Normal View History

2012-12-18 22:34:16 +00:00
# Awesome PHP Libraries
2012-01-25 18:12:11 +00:00
2012-12-18 22:34:24 +00:00
A list of amazingly awesome PHP libraries that you should consider using (and some other shiny extras).
2012-01-25 18:12:11 +00:00
2012-08-28 16:35:06 +00:00
* [Composer](http://getcomposer.org/)/[Packagist](http://packagist.org/) - A package and dependency manager.
2013-02-15 23:00:19 +00:00
* [Composer Installers](https://github.com/composer/installers) - A multi framework Composer library installer.
2012-01-25 18:12:11 +00:00
* [Symfony2](http://symfony.com/) - A framework comprised of individual components.
2013-01-30 22:44:55 +00:00
* [Zend Framework 2](http://framework.zend.com) - Another framework comprised of individual components.
2013-01-23 18:17:34 +00:00
* [Laravel 4](https://github.com/laravel/framework) - A simple PHP framework.
2012-12-07 17:20:11 +00:00
* [Lithium](http://lithify.me/) - Another framework of components.
2012-11-28 18:32:56 +00:00
* [Symfony2 Components](http://symfony.com/doc/master/components/index.html) - The components that make Symfony2.
2013-02-07 20:11:42 +00:00
* [Zend Framework 2 Components](https://packages.zendframework.com/) - The components that make ZF2.
2012-08-13 18:05:30 +00:00
* [Aura Components](http://auraphp.github.com/) - A package of PHP 5.4 components.
2012-01-25 18:12:11 +00:00
* [Silex](http://silex.sensiolabs.org/) - A micro framework built around Symfony2 components.
2013-02-07 20:19:02 +00:00
* [Silex Skeleton](https://github.com/fabpot/Silex-Skeleton) - A skeleton for Silex.
2012-07-27 16:54:42 +00:00
* [Slim](http://www.slimframework.com/) - Another simple micro framework.
2012-01-25 18:12:11 +00:00
* [Twig](http://twig.sensiolabs.org/) - A comprehensive templating language.
2013-02-15 22:57:58 +00:00
* [Twig Cache Extension](https://github.com/asm89/twig-cache-extension) - A template fragment cache library for Twig.
2012-12-18 23:12:25 +00:00
* [Mustache](https://packagist.org/packages/phly/mustache) - A PHP implementation of the Mustache template language.
2012-11-05 17:03:10 +00:00
* [MtHaml](https://github.com/arnaud-lb/MtHaml) - A PHP implementation of the HAML template language.
2012-01-25 18:12:11 +00:00
* [SwiftMailer](http://swiftmailer.org/) - A mailer solution.
* [Pimple](http://pimple.sensiolabs.org/) - A tiny dependency injection container.
2012-10-09 16:22:58 +00:00
* [Auryn](https://github.com/rdlowrey/Auryn) - Another dependency injection container.
2013-01-28 18:58:50 +00:00
* [PHP DI](http://mnapoli.github.com/PHP-DI/) - A dependency injection implementation using annotations.
2012-01-25 18:12:11 +00:00
* [Doctrine](http://www.doctrine-project.org/) - A comprehensive DBAL and ORM.
2012-10-11 19:30:46 +00:00
* [Doctrine Migrations](http://docs.doctrine-project.org/projects/doctrine-migrations/en/latest/toc.html) - A migration library for Doctrine.
2012-12-06 23:54:13 +00:00
* [Migrations](https://github.com/icomefromthenet/Migrations) - A migration management library.
2012-01-25 18:12:11 +00:00
* [Propel](http://www.propelorm.org/) - A fast ORM.
* [Goutte](https://github.com/fabpot/Goutte) - A simple web scraper.
2012-09-18 21:33:18 +00:00
* [Assetic](https://github.com/kriswallsmith/assetic) - An asset manager pipeline library.
* [Pipe](https://github.com/CHH/pipe) - Another asset manager pipeline library.
2012-01-25 18:12:11 +00:00
* [Imagine](http://imagine.readthedocs.org/en/latest/index.html) - An image manipulation library.
2012-09-17 21:14:47 +00:00
* [PHP Image Workshop](https://github.com/Sybio/ImageWorkshop) - Another image manipulation library.
2012-09-24 20:22:40 +00:00
* [GIF Frame Extractor](https://github.com/Sybio/GifFrameExtractor) - A library to extract GIF animation frame information.
2012-09-26 15:19:07 +00:00
* [GIF Creator](https://github.com/Sybio/GifCreator) - A library to create GIF animations from multiple images.
2012-01-25 18:12:11 +00:00
* [Monolog](https://github.com/Seldaek/monolog) - A comprehensive logger.
* [Behat](http://behat.org/) - A Behaviour Driven Development framework.
2012-02-23 21:08:26 +00:00
* [Mink](http://mink.behat.org/) - Web acceptance testing.
2012-01-25 18:12:11 +00:00
* [Buzz](https://github.com/kriswallsmith/Buzz) - A HTTP client.
2012-02-23 21:08:26 +00:00
* [Guzzle](http://guzzlephp.org/) - Another HTTP client.
2012-01-25 18:12:11 +00:00
* [PHPUnit](https://github.com/sebastianbergmann/phpunit) - A unit testing framework.
2012-10-15 17:40:49 +00:00
* [RunkitTestCase](https://github.com/kherge/RunkitTestCase) - A library for creating PHPUnit test cases that use runkit.
2012-10-18 18:56:47 +00:00
* [PHPSpec](https://github.com/phpspec/phpspec2) - A design by specification unit testing library.
2013-01-13 03:45:09 +00:00
* [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.
2012-02-23 21:08:26 +00:00
* [KnpMenu](https://github.com/KnpLabs/KnpMenu) - A menu library.
* [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer.
2012-09-19 15:45:54 +00:00
* [Snappy](https://github.com/KnpLabs/snappy) - A PDF and image generation library (uses [WKHTMLToPDF](https://github.com/antialize/wkhtmltopdf)).
2012-02-23 21:08:26 +00:00
* [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library.
2012-02-28 17:45:10 +00:00
* [GeoCoder](http://geocoder-php.org/) - A geocoding library.
2012-04-10 15:59:18 +00:00
* [Faker](https://github.com/fzaninotto/Faker) - A fake data generator library.
2012-04-12 02:04:30 +00:00
* [Spork](https://github.com/kriswallsmith/spork) - A process forking library.
2012-08-29 16:06:27 +00:00
* [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter.
2012-05-24 16:33:54 +00:00
* [React](https://github.com/react-php/react) - An event driven non-blocking I/O library.
2012-05-24 17:46:47 +00:00
* [Événement](https://github.com/igorw/evenement) - An event dispatcher library.
2012-10-03 17:16:50 +00:00
* [FuelPHP Event](https://github.com/fuelphp/event) - Another event dispatcher library.
2012-05-24 17:32:00 +00:00
* [Sami](https://github.com/fabpot/Sami) - An API documentation generator.
2013-02-27 20:05:45 +00:00
* [Go](https://github.com/herrera-io/php-go) - A simple PHP build tool.
2012-07-27 16:54:42 +00:00
* [Bob](https://github.com/CHH/bob) - A simple project automation tool.
2012-10-31 22:42:17 +00:00
* [Phake](https://github.com/jaz303/phake) - A rake PHP clone library.
2012-08-28 15:22:30 +00:00
* [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility.
2012-08-28 15:22:45 +00:00
* [PHPAss](http://www.openwall.com/phpass/) - A portable password hashing framework.
2012-08-29 16:15:04 +00:00
* [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library.
2012-12-04 16:44:54 +00:00
* [PHP Password Lib](https://github.com/ircmaxell/PHP-PasswordLib) - A library for generating and validating passwords.
2012-12-04 16:46:54 +00:00
* [Password Compat](https://github.com/ircmaxell/password_compat) - A library that provides compatibility with the new PHP 5.5 password functions.
2013-01-22 19:53:14 +00:00
* [Password Policy](https://github.com/ircmaxell/password-policy) - A password policy library for PHP and JavaScript.
2013-02-15 22:46:19 +00:00
* [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings.
2012-08-28 03:28:13 +00:00
* [Box](https://github.com/kherge/Box) - A utility to build PHAR files.
2012-08-28 13:12:33 +00:00
* [Wisdom](https://github.com/kherge/Wisdom) - A library for loading config data.
2012-08-29 15:15:49 +00:00
* [GetOpt](ulrichsg/getopt-php) - A command line opt parser.
* [OptParse](https://github.com/CHH/optparse) - Another command line opt parser.
2012-09-15 17:07:36 +00:00
* [Commando](https://github.com/nategood/commando) - Another simple command line opt parser.
2012-08-31 22:46:05 +00:00
* [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library.
2013-02-15 22:57:58 +00:00
* [OmniPay](https://github.com/adrianmacneil/omnipay) - A framework agnostic multi-gateway payment processing library.
2012-09-07 19:26:47 +00:00
* [Ruler](https://github.com/bobthecow/Ruler) - A simple stateless production rules engine.
2012-09-11 19:16:41 +00:00
* [Carbon](https://github.com/briannesbitt/Carbon) - A simple DateTime API extension.
2013-01-18 17:52:42 +00:00
* [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.
2012-09-11 20:58:39 +00:00
* [Upload](https://github.com/codeguy/Upload) - A library for handling file uploads and validation.
2012-09-19 15:49:30 +00:00
* [Sismo](http://sismo.sensiolabs.org/) - A continuous testing server library.
2012-09-19 15:56:09 +00:00
* [Fetch](https://github.com/tedivm/Fetch) - An IMAP library.
2013-02-11 15:28:18 +00:00
* [Email Reply Parser](https://github.com/willdurand/EmailReplyParser) - An email reply parser library.
2012-12-06 20:06:31 +00:00
* [Lex](https://github.com/pyrocms/lex) - A lightweight template parser.
2012-09-27 19:46:48 +00:00
* [Sslurp](https://github.com/EvanDotPro/Sslurp) - A library that makes dealing with SSL suck less.
2012-10-03 15:32:49 +00:00
* [Composition](https://github.com/composition/composition) - A library to check your Composer environment at runtime.
2012-10-04 16:03:06 +00:00
* [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.
2012-10-15 17:41:25 +00:00
* [Amend](https://github.com/kherge/Amend) - A Symfony Console helper and command set for updating and upgrading applications.
2012-10-04 16:07:56 +00:00
* [Doctrine Extensions](https://github.com/l3pp4rd/DoctrineExtensions) - A collection of Doctrine behavioural extensions.
2012-10-09 15:32:39 +00:00
* [Color Jizz](https://github.com/mikeemoo/ColorJizz-PHP) - A library for manipulating and converting colours.
2012-10-09 15:41:57 +00:00
* [Poser](https://github.com/FrenkyNet/Poser) - A Composer class aliasing library.
2012-10-09 16:41:36 +00:00
* [Version](https://github.com/kherge/Version) - A parsing and comparison library for semantic versioning.
2012-10-09 17:12:02 +00:00
* [Respect Validate](https://github.com/Respect/Validation) - A simple validation library.
2012-10-16 19:10:26 +00:00
* [BCrypt](https://github.com/kherge/Bcrypt) - A BCrypt password hashing library.
* [ShellWrap](https://github.com/MrRio/shellwrap) - A simple command line wrapper library.
2012-10-23 20:21:04 +00:00
* [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library.
2012-10-23 20:28:14 +00:00
* [Cron Expression](https://github.com/mtdowling/cron-expression) - A library to calculate cron run dates.
2012-10-23 20:50:00 +00:00
* [OPAuth](https://github.com/uzyn/opauth) - A multi-provider authentication framework.
2012-10-28 01:52:50 +00:00
* [Ratchet](https://github.com/cboden/Ratchet) - A web socket library.
2012-10-29 19:36:46 +00:00
* [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library.
2012-11-06 17:10:16 +00:00
* [PHP Option](https://github.com/schmittjoh/php-option) An option type library.
2012-11-08 16:28:37 +00:00
* [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library.
2012-11-08 21:47:07 +00:00
* [Metrics](https://github.com/beberlei/metrics) - A simple metrics API library.
2012-11-10 01:00:33 +00:00
* [JShrink](https://github.com/tedivm/JShrink) - A JavaScript minifier library.
2013-01-09 17:32:14 +00:00
* [Ardent](https://github.com/morrisonlevi/Ardent) - A library of data structures.
2012-12-04 16:53:02 +00:00
* [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library.
2012-11-15 23:56:11 +00:00
* [MongoQB](https://github.com/alexbilbie/MongoQB) - A MongoDB query builder library.
2012-11-16 16:20:46 +00:00
* [Monga](https://github.com/FrenkyNet/Monga) - A MongoDB abstraction library.
2012-12-18 23:10:52 +00:00
* [Predis](https://github.com/nrk/predis) - A feature complete Redis library.
2012-12-18 22:23:52 +00:00
* [Sabre VObject](https://github.com/evert/sabre-vobject) - A library for parsing VCard and iCalendar objects.
2013-01-03 16:47:19 +00:00
* [OAuth2](https://github.com/lncd/OAuth2) - An OAuth2 authentication server, resource server and client library.
2013-01-13 04:02:53 +00:00
* [Annotations](https://github.com/doctrine/annotations) - An annotations library (part of Doctrine).
* [Cache](https://github.com/doctrine/cache) - A caching library (part of Doctrine).
2013-01-15 23:42:59 +00:00
* [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library.
2013-01-21 23:15:40 +00:00
* [PHP Collections](https://github.com/schmittjoh/php-collection) - A simple collections library.
2013-01-23 17:01:57 +00:00
* [PHP Domain Parser](https://github.com/jeremykendall/php-domain-parser) - A domain suffix parser library.
2013-02-15 23:04:10 +00:00
* [PHP File Locator](https://github.com/herrera-io/php-file-locator) - A library for locating files in large projects.
2013-01-23 18:54:44 +00:00
* [Elastica](https://github.com/ruflin/Elastica) - A client library for [Elastic Search](http://www.elasticsearch.org/).
2013-02-19 18:12:42 +00:00
* [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data.
2013-02-25 23:38:34 +00:00
* [Numbers PHP](https://github.com/powder96/numbers.php) - A library for working with numbers.
2013-02-28 19:09:13 +00:00
* [Patchwork UTF-8](https://github.com/nicolas-grekas/Patchwork-UTF8) - A portable library for working with UTF-8 strings.
2013-03-02 05:03:32 +00:00
* [Boris](https://github.com/d11wtq/boris) - A tiny PHP REPL.
2012-04-12 02:04:30 +00:00
2012-12-18 22:29:51 +00:00
# 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.
2013-01-31 17:22:20 +00:00
* [Campaign Monitor](http://campaignmonitor.github.com/createsend-php/) - The official Campaign Monitor PHP library.
2012-12-18 22:29:51 +00:00
2012-08-13 17:56:40 +00:00
# Utilities
2012-08-13 18:13:55 +00:00
* [HomeBrew](http://mxcl.github.com/homebrew/) - A package manager for OSX.
* [HomeBrew PHP](https://github.com/josegonzalez/homebrew-php) - A PHP tap for HomeBrew.
2012-12-18 22:24:35 +00:00
* [PHP Brew](https://github.com/c9s/phpbrew) - A PHP version manager and installer.
* [PHP Env](https://github.com/CHH/phpenv) - Another PHP version manager.
2012-12-04 17:03:07 +00:00
* [PHP Build](https://github.com/CHH/php-build) - Another PHP version installer.
2012-10-03 16:12:22 +00:00
* [PHP CS Fixer](https://github.com/fabpot/PHP-CS-Fixer) - A coding standard fixer library.
2012-08-13 19:27:30 +00:00
* [PHP Parser](https://github.com/nikic/PHP-Parser) - A PHP parser written in PHP.
2012-11-15 23:56:11 +00:00
* [PHP Manipulator](https://github.com/schmittjoh/php-manipulator) - A library for analysing and modifying PHP Source Code.
2013-03-05 15:33:09 +00:00
* [PHP Analyser](https://github.com/scrutinizer-ci/php-analyzer) - A library for analysing PHP code to find bugs and errors.
2013-02-19 18:04:39 +00:00
* [Zend Optimizer Plus](https://github.com/zend-dev/ZendOptimizerPlus) - A Zend engine opcode cacher and optimiser.
2012-11-28 18:32:05 +00:00
* [PHP Queue](https://github.com/miccheng/php-queue) - An application for managing queueing backends.
2013-01-02 16:35:47 +00:00
* [PHPPHP](https://github.com/ircmaxell/PHPPHP) - A PHP VM implementation in PHP.
2013-02-19 18:04:39 +00:00
* [SensioLabs Security Check](https://security.sensiolabs.org/) - A web tool to check your Composer dependecies for security advisories.
2012-11-28 18:32:05 +00:00
* [DBV](http://dbv.vizuina.com/) - A database version control application.
2013-02-15 23:04:10 +00:00
* [Country List](https://github.com/umpirsky/country-list) - A list of all countries with names and ISO 3166-1 codes.
2012-08-13 19:27:30 +00:00
# Resources
* [PHP The Right Way](http://www.phptherightway.com/) - A PHP best practice quick reference guide.
2012-08-25 03:43:55 +00:00
* [PHP Best Practices](http://phpbestpractices.org/) - A PHP best practice guide.
2013-02-12 15:24:06 +00:00
* [PHP Weekly](http://phpweekly.info/archive/) - A weekly PHP newsletter.
2012-08-13 19:27:30 +00:00
* [PHP Security](http://phpsecurity.readthedocs.org/en/latest/index.html) - A guide to PHP security.
* [PHP Standards Working Group](https://groups.google.com/group/php-standards) - The PHP standards working group.
2012-11-27 23:20:43 +00:00
* [The Open Web Application Security Project (OWASP)](https://www.owasp.org/index.php/Main_Page) - An open software security community.
2012-12-04 16:47:48 +00:00
* [WebSec IO](http://websec.io/) - A web security community resource.
2012-12-06 01:26:17 +00:00
* [Web Advent](http://webadvent.org) - An advent calendar for web developers.
2013-01-08 16:21:36 +00:00
* [Programming with Anthony](http://www.youtube.com/playlist?list=PLM-218uGSX3DQ3KsB5NJnuOqPqc5CW2kW) - A video series by Anthony Ferrara.
2013-01-08 16:48:11 +00:00
* [Scaling PHP Applications](http://www.scalingphpbook.com) - A paid ebook about scaling PHP applications by Steve Corona.
2013-01-08 17:15:16 +00:00
* [Semantic Versioning](http://semver.org/) - A website explaining semantic versioning.
2013-01-08 16:21:36 +00:00
# Reading
2013-01-28 20:28:08 +00:00
* [OWASP PHP Security Cheat Sheet](https://www.owasp.org/index.php/PHP_Security_Cheat_Sheet) - A PHP security cheatsheet.
2013-01-08 16:21:36 +00:00
* [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.
2013-02-19 20:04:36 +00:00
* [Preventing CSRF Attacks](http://blog.ircmaxell.com/2013/02/preventing-csrf-attacks.html) - An article on preventing CSRF attacks.
2013-01-08 16:47:41 +00:00
* [Print vs Echo, Which One is Faster?](http://fabien.potencier.org/article/8/print-vs-echo-which-one-is-faster) - An article about print and echo performance.
2013-01-08 16:38:08 +00:00
* [The PHP Ternary Operator. Fast or Not?](http://fabien.potencier.org/article/48/the-php-ternary-operator-fast-or-not) - An article ternary performance.
2013-01-08 16:38:26 +00:00
* [On PHP 5.3, Lamda Functions and Closures](http://fabien.potencier.org/article/17/on-php-5-3-lambda-functions-and-closures) - An article about lambda functions and closures.
2013-01-08 23:01:50 +00:00
* [Use Env](http://seancoates.com/blogs/use-env) - An article about using the unix environment helper.
2013-01-08 16:47:41 +00:00
* [Disproving the Single Quotes Myth](http://nikic.github.com/2012/01/09/Disproving-the-Single-Quotes-Performance-Myth.html) - An article about performance of single and double quoted strings.
2013-01-08 16:46:28 +00:00
* [You're Being Lied To](http://blog.golemon.com/2007/01/youre-being-lied-to.html) - An article about internal ZVALs.
2013-01-08 16:47:41 +00:00
* [How Long is a Piece of String](http://blog.golemon.com/2006/06/how-long-is-piece-of-string.html) - An article about string internals.
* [Understanding OpCodes](http://blog.golemon.com/2008/01/understanding-opcodes.html) - An article about opcodes.
2013-01-08 16:46:28 +00:00
* [When Does Foreach Copy?](http://nikic.github.com/2011/11/11/PHP-Internals-When-does-foreach-copy.html) - An article about the internals of foreach.
* [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.
2013-01-08 17:10:06 +00:00
* 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.
2013-01-30 20:59:03 +00:00
* 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.
* [PHP Sucks! But I Like It!](http://blog.ircmaxell.com/2012/04/php-sucks-but-i-like-it.html) - An article about the pros and cons of PHP.
2013-01-30 20:59:25 +00:00
* [PHP Is Much Better Than You Think](http://fabien.potencier.org/article/64/php-is-much-better-than-you-think) - An article about the PHP lanaguage and ecosystem.