awesome-php/README.md

879 lines
59 KiB
Markdown
Raw Normal View History

2016-01-30 11:58:01 +00:00
# Awesome PHP [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [![Build Status](https://api.travis-ci.org/ziadoz/awesome-php.svg?branch=master)](https://travis-ci.org/ziadoz/awesome-php)
2016-01-27 16:06:46 +00:00
2014-06-27 15:08:41 +00:00
A curated list of amazingly awesome PHP libraries, resources and shiny things.
2012-01-25 18:12:11 +00:00
## Contributing
2016-01-20 17:50:41 +00:00
Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONTRIBUTING.md) and [CODE-OF-CONDUCT](https://github.com/ziadoz/awesome-php/blob/master/CODE-OF-CONDUCT.md) for details.
## Table of Contents
- [Awesome PHP](#awesome-php)
2015-11-20 08:13:54 +00:00
- [Dependency Management](#dependency-management)
- [Dependency Management Extras](#dependency-management-extras)
- [Frameworks](#frameworks)
- [Framework Extras](#framework-extras)
- [Components](#components)
- [Micro Frameworks](#micro-frameworks)
- [Micro Framework Extras](#micro-framework-extras)
- [Routers](#routers)
- [Templating](#templating)
- [Static Site Generators](#static-site-generators)
- [HTTP](#http)
- [Middlewares](#middlewares)
- [URL](#url)
- [Email](#email)
- [Files](#files)
- [Streams](#streams)
- [Dependency Injection](#dependency-injection)
- [Imagery](#imagery)
- [Testing](#testing)
- [Continuous Integration](#continuous-integration)
- [Documentation](#documentation)
- [Security](#security)
- [Passwords](#passwords)
- [Code Analysis](#code-analysis)
- [Architectural](#architectural)
- [Debugging and Profiling](#debugging-and-profiling)
- [Build Tools](#build-tools)
- [Task Runners](#task-runners)
- [Navigation](#navigation)
- [Asset Management](#asset-management)
- [Geolocation](#geolocation)
- [Date and Time](#date-and-time)
- [Event](#event)
- [Logging](#logging)
- [E-commerce](#e-commerce)
- [PDF](#pdf)
- [Office](#office)
- [Database](#database)
- [Migrations](#migrations)
- [NoSQL](#nosql)
- [Queue](#queue)
- [Search](#search)
- [Command Line](#command-line)
- [Authentication and Authorization](#authentication-and-authorization)
- [Markup](#markup)
- [Strings](#strings)
- [Numbers](#numbers)
- [Filtering and Validation](#filtering-and-validation)
- [API](#api)
- [Caching](#caching)
- [Data Structure and Storage](#data-structure-and-storage)
- [Notifications](#notifications)
- [Deployment](#deployment)
- [Internationalisation and Localisation](#internationalisation-and-localisation)
- [Third Party APIs](#third-party-apis)
- [Extensions](#extensions)
- [Miscellaneous](#miscellaneous)
- [Software](#software)
2015-11-20 08:13:54 +00:00
- [PHP Installation](#php-installation)
- [Development Environment](#development-environment)
- [Virtual Machines](#virtual-machines)
- [Integrated Development Environment](#integrated-development-environment)
- [Web Applications](#web-applications)
- [Infrastructure](#infrastructure)
- [Resources](#resources)
2015-11-20 08:13:54 +00:00
- [PHP Websites](#php-websites)
- [Other Websites](#other-websites)
- [PHP Books](#php-books)
- [PHP Videos](#php-videos)
- [PHP Reading](#php-reading)
- [PHP Internals Reading](#php-internals-reading)
2014-03-03 10:05:39 +00:00
- [Contributing](#contributing)
2014-07-12 00:57:57 +00:00
## Dependency Management
*Libraries for dependency and package management.*
2013-04-16 02:10:03 +00:00
* [Composer](https://getcomposer.org/)/[Packagist](https://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.
2014-07-11 23:23:06 +00:00
* [Pickle](https://github.com/FriendsOfPHP/pickle) - A PHP extension installer.
2015-06-25 09:01:53 +00:00
* [Melody](http://melody.sensiolabs.org/) - A tool to build one file Composer scripts.
2013-04-16 02:10:03 +00:00
2014-07-12 00:57:57 +00:00
## Dependency Management Extras
*Extras related to dependency management.*
2013-04-16 02:10:03 +00:00
2013-04-01 15:21:28 +00:00
* [Satis](https://github.com/composer/satis) - A static Composer repository generator.
2014-12-04 20:47:04 +00:00
* [Toran Proxy](https://toranproxy.com) - A static Composer repository and proxy.
2013-04-16 02:10:03 +00:00
* [Composition](https://github.com/bamarni/composition) - A library to check your Composer environment at runtime.
2016-01-28 20:30:49 +00:00
* [Version](https://github.com/kherge-abandoned/php-version) - A parsing and comparison library for semantic versioning.
2013-04-16 02:10:03 +00:00
* [NameSpacer](https://github.com/ralphschindler/Namespacer) - A library to convert from underscores to namespaces.
2013-04-25 01:44:26 +00:00
* [Patch Installer](https://github.com/goatherd/patch-installer) - A library to install patches using Composer.
2014-06-27 11:41:14 +00:00
* [Composer Checker](https://github.com/silpion/composer-checker) - A tool to validate Composer configurations.
* [Prestissimo](https://github.com/hirak/prestissimo) - A composer plugin which enables parallel install process.
2016-01-29 20:08:50 +00:00
* [Composer Merge Plugin](https://github.com/wikimedia/composer-merge-plugin) - A composer plugin to merge several composer.json files.
2013-04-16 02:10:03 +00:00
## Frameworks
*Web development frameworks.*
2013-04-16 02:10:03 +00:00
* [Symfony 2](http://symfony.com/) - A framework comprised of individual components (SF2).
* [Zend Framework 2](http://framework.zend.com) - Another framework comprised of individual components (ZF2).
* [Laravel 5](https://laravel.com/) - Another PHP framework (L5).
2013-09-20 02:42:43 +00:00
* [Aura PHP](http://auraphp.com/) - A framework of independent components.
2014-10-29 23:59:16 +00:00
* [Yii2](https://github.com/yiisoft/yii2/) - Another PHP framework.
* [Nette](https://nette.org) - Another framework comprised of individual components.
* [PPI Framework 2](http://www.ppi.io) - An interoperability framework.
2015-09-25 01:24:08 +00:00
* [CakePHP](http://cakephp.org/) - A rapid application development framework (CP).
* [Phalcon](https://phalconphp.com/en/) - A framework implemented as a C extension.
## Framework Extras
2014-04-29 01:43:49 +00:00
*Extras related to web development frameworks.*
* [Symfony CMF](https://github.com/symfony-cmf/symfony-cmf) - A Content Management Framework to create custom CMS.
* [Knp RAD Bundle](http://rad.knplabs.com/) - A Rapid Application Development (RAD) bundle for Symfony 2.
2015-04-11 14:13:03 +00:00
* [CakePHP CRUD](https://github.com/friendsofcake/crud) - A Rapid Application Development (RAD) plugin for CakePHP.
2013-04-16 02:10:03 +00:00
## Components
2015-09-02 20:37:14 +00:00
*Standalone components from web development frameworks and development groups.*
2013-04-16 02:10:03 +00:00
* [Symfony2 Components](http://symfony.com/doc/master/components/index.html) - The components that make Symfony 2.
* [Zend Framework 2 Components](https://packages.zendframework.com/) - The components that make Zend Framework.
* [Aura Components](http://auraphp.com/) - A package of PHP 5.4 components.
2015-04-11 14:13:03 +00:00
* [CakePHP Plugins](http://plugins.cakephp.org/) - A directory of CakePHP plugins.
2014-05-27 15:35:09 +00:00
* [Hoa Project](http://hoa-project.net/En/) - Another package of PHP components.
* [League of Extraordinary Packages](https://thephpleague.com/) - A PHP package development group.
2013-04-16 02:10:03 +00:00
## Micro Frameworks
*Micro frameworks and routers.*
2013-04-16 02:10:03 +00:00
2012-01-25 18:12:11 +00:00
* [Silex](http://silex.sensiolabs.org/) - A micro framework built around Symfony2 components.
* [Slim](http://www.slimframework.com/) - Another simple micro framework.
2014-06-04 19:13:29 +00:00
* [Bullet PHP](http://bulletphp.com/) - A micro framework for building REST APIs.
* [Lumen](https://lumen.laravel.com) - A micro-framework by Laravel.
* [Proton](https://github.com/alexbilbie/Proton) - A StackPHP compatible micro framework
## Micro Framework Extras
2014-04-29 01:43:49 +00:00
*Extras related to micro frameworks and routers.*
* [Silex Skeleton](https://github.com/silexphp/Silex-Skeleton) - A project skeleton for Silex.
2013-08-16 15:46:57 +00:00
* [Silex Web Profiler](https://github.com/silexphp/Silex-WebProfiler) - A web debug toolbar for Silex.
* [Slim Skeleton](https://github.com/slimphp/Slim-Skeleton) - A skeleton for Slim.
* [Slim View](https://github.com/slimphp/Slim-Views) - A collection of custom views for Slim.
2013-04-16 02:10:03 +00:00
2015-02-07 02:42:19 +00:00
## Routers
*Libraries for handling application routing.*
2015-02-07 02:42:19 +00:00
* [Fast Route](https://github.com/nikic/FastRoute) - A fast routing library.
* [Route](https://github.com/thephpleague/route) - A routing library built on top of Fast Route.
* [Pux](https://github.com/c9s/Pux) - Another fast routing library.
* [Klein](https://github.com/chriso/klein.php) - A flexible router.
2013-04-16 02:10:03 +00:00
## Templating
2013-11-14 03:41:38 +00:00
*Libraries and tools for templating and lexing.*
2013-04-16 02:10:03 +00:00
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.
2013-04-01 17:11:58 +00:00
* [Mustache](https://github.com/bobthecow/mustache.php) - A PHP implementation of the Mustache template language.
* [Phly Mustache](https://github.com/phly/phly_mustache) - Another 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.
* [PHPTAL](http://phptal.org/) - A PHP implementation of the [TAL](https://en.wikipedia.org/wiki/Template_Attribute_Language) templating language.
* [Plates](http://platesphp.com/) - A native PHP templating library.
2013-04-16 02:10:03 +00:00
* [Lex](https://github.com/pyrocms/lex) - A lightweight template parser.
## Static Site Generators
*Tools for pre-processing content to generate web pages.*
* [Sculpin](https://sculpin.io) - A tool that converts Markdown and Twig into static HTML.
* [Phrozn](http://phrozn.info) - Another tool that converts Textile, Markdown and Twig into HTML.
* [Spress](http://spress.yosymfony.com) - An extensible tool that converts Markdown and Twig into HTML.
2013-04-16 02:10:03 +00:00
## HTTP
*Libraries for working with HTTP and scraping websites.*
2013-04-16 02:10:03 +00:00
* [Guzzle]( https://github.com/guzzle/guzzle) - A comprehensive HTTP client.
2013-04-16 02:10:03 +00:00
* [Buzz](https://github.com/kriswallsmith/Buzz) - Another HTTP client.
2013-05-01 03:26:33 +00:00
* [Requests](https://github.com/rmccue/Requests) - A simple HTTP library.
2014-07-12 00:56:53 +00:00
* [HTTPFul](https://github.com/nategood/httpful) - A chainable HTTP client.
* [Goutte](https://github.com/FriendsOfPHP/Goutte) - A simple web scraper.
2013-11-12 23:01:37 +00:00
* [PHP VCR](http://php-vcr.github.io/) - A library for recording and replaying HTTP requests.
2013-04-16 02:10:03 +00:00
2014-11-25 02:18:53 +00:00
## Middlewares
*Libraries for building application using middlewares.*
2015-02-07 02:50:00 +00:00
2014-11-25 02:18:53 +00:00
* [Stack](https://github.com/stackphp) - A library of stackable middleware for Silex/Symfony.
* [Slim Middleware](https://github.com/slimphp/Slim-Middleware) - A collection of custom middleware for Slim.
2015-02-07 02:50:00 +00:00
* [Conduit](https://github.com/phly/conduit) - A port of [Sencha Connect](https://github.com/senchalabs/connect) to PHP.
2014-11-25 02:18:53 +00:00
2013-04-16 02:10:03 +00:00
## URL
*Libraries for parsing URLs.*
2013-04-16 02:10:03 +00:00
* [Purl](https://github.com/jwage/purl) - A URL manipulation library.
2015-11-04 22:01:53 +00:00
* [Uri](https://github.com/thephpleague/uri) - Another URL manipulation library.
2013-04-16 02:10:03 +00:00
* [PHP Domain Parser](https://github.com/jeremykendall/php-domain-parser) - A domain suffix parser library.
## Email
*Libraries for sending and parsing email.*
2013-04-16 02:10:03 +00:00
2012-01-25 18:12:11 +00:00
* [SwiftMailer](http://swiftmailer.org/) - A mailer solution.
2013-04-30 14:13:25 +00:00
* [PHPMailer](https://github.com/PHPMailer/PHPMailer) - Another mailer solution.
* [Fetch](https://github.com/tedious/Fetch) - An IMAP library.
2013-04-16 02:10:03 +00:00
* [Email Reply Parser](https://github.com/willdurand/EmailReplyParser) - An email reply parser library.
* [Stampie](https://github.com/henrikbjorn/Stampie) - A library for email services such as [SendGrid](http://sendgrid.com), [PostMark](https://postmarkapp.com), [MailGun](http://www.mailgun.com) and [Mandrill](http://www.mandrill.com).
* [CssToInlineStyles](https://github.com/tijsverkoyen/CssToInlineStyles) - A library to inline CSS in email templates.
* [Email Validator](https://github.com/nojacko/email-validator) - A small email address validation library.
2013-04-16 02:10:03 +00:00
2013-11-14 01:59:23 +00:00
## Files
*Libraries for file manipulation and MIME type detection.*
2013-05-03 15:42:12 +00:00
* [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer.
* [Flysystem](https://github.com/thephpleague/Flysystem) - Another filesystem abstraction layer.
2013-05-03 15:42:12 +00:00
* [Canal](https://github.com/dflydev/dflydev-canal) - A library to determine internet media types.
2013-05-03 15:43:27 +00:00
* [Apache MIME Types](https://github.com/dflydev/dflydev-apache-mime-types) - A library that parses Apache MIME types.
2013-05-03 15:42:12 +00:00
* [Ferret](https://github.com/versionable/Ferret) - A MIME detection library.
2013-10-15 19:45:44 +00:00
* [Hoa Mime](https://github.com/hoaproject/Mime) - Another MIME detection library.
2013-06-18 22:12:24 +00:00
* [Lurker](https://github.com/henrikbjorn/Lurker) - A resource tracking library.
* [PHP File Locator](https://github.com/kherge-abandoned/php-file-locator) - A library for locating files in large projects.
* [PHP FFmpeg](https://github.com/PHP-FFmpeg/PHP-FFmpeg/) - A wrapper for the [FFmpeg](http://www.ffmpeg.org/) video library.
* [CSV](https://github.com/thephpleague/csv) - A CSV data manipulation library.
2013-06-18 22:26:23 +00:00
## Streams
*Libraries for working with streams.*
2013-06-18 22:26:23 +00:00
* [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library.
2013-05-03 15:42:12 +00:00
2013-04-16 02:10:03 +00:00
## Dependency Injection
*Libraries that implement the dependency injection design pattern.*
2013-04-16 02:10:03 +00:00
2012-01-25 18:12:11 +00:00
* [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.
2015-02-07 02:40:26 +00:00
* [Container](https://github.com/thephpleague/container) - Another flexible dependency injection container.
2015-08-03 23:18:07 +00:00
* [PHP-DI](http://php-di.org/) - A dependency injection container that supports autowiring.
* [Acclimate](https://github.com/jeremeamia/acclimate-container) - A common interface to dependency injection containers and service locators.
* [Symfony DI](https://github.com/symfony/dependency-injection) - A dependency injection container component (SF2).
2013-04-16 02:10:03 +00:00
## Imagery
*Libraries for manipulating images.*
2013-04-16 02:10:03 +00:00
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.
2013-10-23 18:05:10 +00:00
* [Intervention Image](https://github.com/Intervention/image) - 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.
2013-11-14 21:54:02 +00:00
* [Image With Text](https://github.com/nmcteam/image-with-text) - A library for embedding text into images.
* [Color Extractor](https://github.com/thephpleague/color-extractor) - A library for extracting colours from images.
2015-02-07 06:44:13 +00:00
* [Glide](https://github.com/thephpleague/glide) - An on-demand image manipulation library.
2014-08-25 21:55:33 +00:00
* [Image Optimizer](https://github.com/psliwa/image-optimizer) - A library for optimizing images.
2013-04-16 02:10:03 +00:00
## Testing
*Libraries for testing codebases and generating test data.*
2013-04-16 02:10:03 +00:00
2012-01-25 18:12:11 +00:00
* [PHPUnit](https://github.com/sebastianbergmann/phpunit) - A unit testing framework.
2014-01-12 21:42:53 +00:00
* [DBUnit](https://github.com/sebastianbergmann/dbunit) - A database testing library for PHPUnit.
2013-03-14 14:33:58 +00:00
* [ParaTest](https://github.com/brianium/paratest) - A parallel testing library for PHPUnit.
2013-12-13 14:12:07 +00:00
* [PHPSpec](https://github.com/phpspec/phpspec) - A design by specification unit testing library.
2013-03-18 20:26:40 +00:00
* [Codeception](https://github.com/Codeception/Codeception) - A full stack testing framework.
2014-07-13 03:50:22 +00:00
* [AspectMock](https://github.com/Codeception/AspectMock) - A mocking framework for PHPUnit/Codeception.
2013-03-18 20:26:40 +00:00
* [Atoum](https://github.com/atoum/atoum) - A simple 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.
2014-11-10 17:17:36 +00:00
* [Prophecy](https://github.com/phpspec/prophecy) - A highly opinionated mocking framework.
2012-04-10 15:59:18 +00:00
* [Faker](https://github.com/fzaninotto/Faker) - A fake data generator library.
2013-11-12 23:08:41 +00:00
* [Samsui](https://github.com/mauris/samsui) - Another fake data generator library.
2013-04-16 02:10:03 +00:00
* [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library.
* [Behat](http://docs.behat.org/en/v2.5/) - A behaviour driven development (BDD) testing framework.
* [Pho](https://github.com/danielstjules/pho) - Another behaviour driven development testing framework.
* [Mink](http://mink.behat.org/en/latest/) - Web acceptance testing.
2013-05-27 15:30:20 +00:00
* [HTTP Mock](https://github.com/InterNations/http-mock) - A library for mocking HTTP requests in unit tests.
2013-09-11 16:27:51 +00:00
* [VFS Stream](https://github.com/mikey179/vfsStream) - A virtual filesystem stream wrapper for testing.
* [VFS](https://github.com/adlawson/php-vfs) - Another virtual filesystem for testing.
* [Locust](http://locust.io/) - A modern load test library written in Python.
2015-01-23 18:14:18 +00:00
* [Peridot](https://github.com/peridot-php/peridot) - An event driven test framework.
## Continuous Integration
*Libraries and applications for continuous integration.*
* [Travis CI](https://travis-ci.org/) - A continuous integration platform.
* [SemaphoreCI](https://semaphoreci.com/) - A continuous integration platform for open source and private projects.
* [PHPCI](https://www.phptesting.org/) - An open source continuous integration platform for PHP.
* [Sismo](http://sismo.sensiolabs.org/) - A continuous testing server library.
2015-07-29 23:05:38 +00:00
* [Jenkins](http://jenkins-ci.org/) - A continous integration platform with [PHP support](http://jenkins-php.org/index.html).
* [JoliCi](https://github.com/jolicode/JoliCi) - A continuous integration client written in PHP and powered by Docker.
2013-04-16 02:10:03 +00:00
## Documentation
*Libraries for generating project documentation.*
2013-04-16 02:10:03 +00:00
* [Sami](https://github.com/FriendsOfPHP/Sami) - An API documentation generator.
2013-12-14 01:47:32 +00:00
* [APIGen](https://github.com/apigen/apigen) - Another API documentation generator.
* [PHP Documentor 2](https://github.com/phpDocumentor/phpDocumentor2) - A documentation generator.
2014-07-11 10:38:13 +00:00
* [phpDox](http://phpdox.de/) - A documentation generator for PHP projects (that is not limited to API documentation).
2013-04-16 02:10:03 +00:00
## Security
*Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.*
2013-04-16 02:10:03 +00:00
* [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter.
2014-06-27 15:08:41 +00:00
* [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings.
* [True Random](https://github.com/pixeloution/true-random) - A library that generates random numbers using [www.random.org](https://www.random.org/).
2013-04-16 02:10:03 +00:00
* [SecurityMultiTool](https://github.com/padraic/SecurityMultiTool) - A PHP security library.
* [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library.
2012-08-31 22:46:05 +00:00
* [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library.
2013-05-01 04:52:05 +00:00
* [PHP IDS](https://github.com/PHPIDS/PHPIDS) - A structured PHP security layer.
2013-05-30 19:34:47 +00:00
* [PHP SSH](https://github.com/Herzult/php-ssh) - An experimental object orientated SSH wrapper library.
2013-11-05 21:50:27 +00:00
* [IniScan](https://github.com/psecio/iniscan) - A tool that scans PHP INI files for security.
2014-07-15 13:14:29 +00:00
* [SensioLabs Security Check](https://security.sensiolabs.org/) - A web tool to check your Composer dependencies for security advisories.
* [Zed](https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project) - An integrated penetration testing tool for web applications.
2015-10-21 02:11:25 +00:00
* [VAddy](http://vaddy.net) - A continuous security testing platform for web applications.
## Passwords
*Libraries and tools for working with and storing passwords.*
* [Password Compat](https://github.com/ircmaxell/password_compat) - A compatibility library for the new PHP 5.5 password functions.
* [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.
* [Password Validator](https://github.com/jeremykendall/password-validator) - A library for validating and upgrading password hashes.
* [Zxcvbn PHP](https://github.com/bjeavons/zxcvbn-php) - A realistic PHP password strength estimate library based on Zxcvbn JS.
2015-05-15 16:17:53 +00:00
* [GenPhrase](https://github.com/timoh6/GenPhrase) - A library for generating secure random passphrases.
2013-04-16 02:10:03 +00:00
2013-05-30 19:44:20 +00:00
## Code Analysis
*Libraries and tools for analysing, parsing and manipulating codebases.*
2013-05-30 19:44:20 +00:00
* [PHP Parser](https://github.com/nikic/PHP-Parser) - A PHP parser written in PHP.
* [PHPPHP](https://github.com/ircmaxell/PHPPHP) - A PHP VM implementation in PHP.
* [PHPSandbox](https://github.com/fieryprophet/php-sandbox) - A PHP sandbox environment.
2013-06-18 15:57:53 +00:00
* [Dissect](https://github.com/jakubledl/dissect) - A set of tools for lexical and syntactical analysis.
2013-05-30 19:44:20 +00:00
* [PHP Mess Detector](http://phpmd.org/) - A library that scans code for bugs, sub-optimal code, unused parameters and more.
* [PHP Code Sniffer](https://github.com/squizlabs/PHP_CodeSniffer) - A library that detects PHP, CSS and JS coding standard violations.
* [PHPCPD](https://github.com/sebastianbergmann/phpcpd) - A library that detects copied and pasted code.
* [PHP Analyser](https://github.com/scrutinizer-ci/php-analyzer) - A library for analysing PHP code to find bugs and errors.
2015-02-01 17:09:33 +00:00
* [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) - A coding standards fixer library.
2013-05-30 19:44:20 +00:00
* [PHP Manipulator](https://github.com/schmittjoh/php-manipulator) - A library for analysing and modifying PHP Source Code.
2014-06-27 15:08:41 +00:00
* [PHP Metrics](https://github.com/Halleck45/PhpMetrics) - A static metric library.
2013-05-30 19:44:20 +00:00
* [PHP Refactoring Browser](https://github.com/QafooLabs/php-refactoring-browser) - A command line utility for refactoring PHP code.
* [PHP Semantic Versioning Checker](https://github.com/tomzx/php-semver-checker) - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
2013-06-09 07:17:31 +00:00
* [UBench](https://github.com/devster/ubench) - A simple micro benchmark library.
2013-07-04 16:44:54 +00:00
* [Athletic](https://github.com/polyfractal/athletic) - An annotation based benchmark framework.
2013-07-12 16:45:01 +00:00
* [Mondrian](https://github.com/Trismegiste/Mondrian) - A code analysis tool using Graph Theory.
* [Scrutinizer](https://scrutinizer-ci.com/) - A web tool to scrutinise PHP code.
2014-06-14 11:04:52 +00:00
* [PHPLOC](https://github.com/sebastianbergmann/phploc) - A tool for quickly measuring the size of a PHP project.
* [PHPCheckstyle](https://github.com/PHPCheckstyle/phpcheckstyle) - A tool to help adhere to certain coding conventions.
2015-05-15 16:11:22 +00:00
* [PhpDependencyAnalysis](https://github.com/mamuz/PhpDependencyAnalysis) - A tool to create customisable dependency graphs.
* [Code Climate](https://codeclimate.com) - An automated code review.
## Architectural
*Libraries related to design patterns, programming approaches and ways to organize code.*
2015-07-29 23:05:38 +00:00
* [PHP Option](https://github.com/schmittjoh/php-option) - An option type library.
* [Ruler](https://github.com/bobthecow/Ruler) - A simple stateless production rules engine.
* [Finite](http://yohan.giarel.li/Finite/) - A simple PHP finite state machine.
* [Compose](https://github.com/igorw/compose) - A function composition library.
* [Monad PHP](https://github.com/ircmaxell/monad-php) - A simple Monad library.
* [Patchwork](http://antecedent.github.io/patchwork/) - A library for redefining userland functions.
* [Galapagos](https://github.com/endel/galapagos) - Evolutionary language transformation.
* [Design Patterns PHP](https://github.com/domnikl/DesignPatternsPHP) - A repository of software patterns implemented in PHP.
* [Functional PHP](https://github.com/lstrojny/functional-php) - A functional programming library.
* [Lib Accessor](https://github.com/kherge-abandoned/lib-accessor) - A library for simplifying accessors.
* [Iter](https://github.com/nikic/iter) - A library that provides iteration primitives using generators.
2015-06-10 09:38:11 +00:00
## Debugging and Profiling
*Libraries and tools for debugging and profiling code.*
* [xDebug](https://github.com/xdebug/xdebug) - A debug and profile tool for PHP.
* [PHP Debug Bar](http://phpdebugbar.com/) - A debugging toolbar.
* [PHP Console](https://github.com/Seldaek/php-console) - A web debugging console.
* [Barbushin PHP Console](https://github.com/barbushin/php-console) - Another web debugging console using Google Chrome.
* [PHPDBG](http://phpdbg.com/) - An interactive PHP debugger.
2014-12-01 01:15:33 +00:00
* [Tracy](https://github.com/nette/tracy) - A simple error detection, logging and time measuring library.
2015-01-04 18:06:55 +00:00
* [Z-Ray](http://www.zend.com/en/products/server/z-ray) - A debug and profile tool for Zend Server.
2015-06-10 09:38:11 +00:00
* [XHProf](https://github.com/phacility/xhprof) - A profiling tool originally developed by Facebook.
* [Blackfire.io](https://blackfire.io) - A low-overhead code profiler.
2015-08-10 16:51:26 +00:00
* [Kint](https://github.com/raveren/kint) - A debugging and profiling tool.
2016-01-29 20:08:50 +00:00
* [PHPBench](https://github.com/phpbench/phpbench) - A benchmarking Framework.
2013-05-30 19:44:20 +00:00
2013-04-16 02:10:03 +00:00
## Build Tools
*Project build and automation tools.*
2013-04-16 02:10:03 +00:00
* [Go](https://github.com/kherge-abandoned//php-go) - A simple PHP build tool.
2013-04-16 02:10:03 +00:00
* [Bob](https://github.com/CHH/bob) - A simple project automation tool.
* [Phake](https://github.com/jaz303/phake) - A rake PHP clone library.
* [Box](https://github.com/box-project/box2) - A utility to build PHAR files.
* [Phing](http://www.phing.info/) - A PHP project build system inspired by Apache Ant.
## Task Runners
2014-07-06 20:51:46 +00:00
*Libraries for automating and running tasks.*
2014-06-15 11:31:15 +00:00
* [Task](http://taskphp.github.io/) - A pure PHP task runner inspired by Grunt and Gulp.
* [Robo](https://github.com/Codegyre/Robo) - A PHP Task runner with object-orientated configurations.
* [Bldr](http://bldr.io/) - A PHP Task runner built on Symfony components.
2013-04-16 02:10:03 +00:00
2014-07-12 00:52:33 +00:00
## Navigation
*Tools for building navigation structures.*
* [KnpMenu](https://github.com/KnpLabs/KnpMenu) - A menu library.
* [Cartographer](https://github.com/tackk/cartographer) - A sitemap generation library.
2013-04-16 02:10:03 +00:00
## Asset Management
*Tools for managing, compressing and minifying website assets.*
2013-04-16 02:10:03 +00:00
* [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/tedious/JShrink) - A JavaScript minifier library.
* [Puli](https://github.com/puli/repository) - A library for determining assets absolute paths.
2013-04-16 02:10:03 +00:00
## Geolocation
*Libraries for geocoding addresses and working with latitudes and longitudes.*
2013-04-16 02:10:03 +00:00
* [GeoCoder](http://geocoder-php.org/) - A geocoding library.
* [GeoTools](https://github.com/thephpleague/geotools) - A library of geo-related tools.
2013-06-09 07:17:31 +00:00
* [PHPGeo](https://github.com/mjaschen/phpgeo) - A simple geo library.
2013-06-25 22:09:11 +00:00
* [GeoJSON](https://github.com/jmikola/geojson) - A GeoJSON implementation.
2013-04-16 02:10:03 +00:00
## Date and Time
*Libraries for working with dates and times.*
2013-04-16 02:10:03 +00:00
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
* [ExpressiveDate](https://github.com/jasonlewis/expressive-date) - Another DateTime API extension.
* [CalendR](http://yohan.giarel.li/CalendR/) - A calendar management library.
2013-04-16 02:10:03 +00:00
## Event
*Libraries that are event-driven or implement non-blocking event loops.*
2013-04-16 02:10:03 +00:00
* [React](https://github.com/reactphp/react) - An event driven non-blocking I/O library.
2013-06-25 22:09:11 +00:00
* [Rx.PHP](https://github.com/asm89/Rx.PHP) - A reactive extension library.
* [Ratchet](https://github.com/ratchetphp/Ratchet) - A web socket library.
2013-10-15 19:25:00 +00:00
* [Hoa WebSocket](https://github.com/hoaproject/Websocket) - Another web socket library.
2014-12-18 13:57:18 +00:00
* [Elephant.io](https://github.com/Wisembly/Elephant.io) - Yet another web socket library.
2013-10-15 19:24:27 +00:00
* [Hoa EventSource](https://github.com/hoaproject/Eventsource) - An event source library.
2013-06-11 17:49:15 +00:00
* [Evenement](https://github.com/igorw/evenement) - An event dispatcher library.
2015-02-07 02:23:29 +00:00
* [Event](https://github.com/thephpleague/event) - An event library with a focus on domain events.
2015-04-11 14:13:03 +00:00
* [Cake Event](https://github.com/cakephp/event) - An event dispatcher library (CP).
2015-02-07 02:23:29 +00:00
* [Broadway](https://github.com/qandidate-labs/broadway) - An event source and CQRS library.
2013-04-16 02:10:03 +00:00
## Logging
*Libraries for generating and working with log files.*
2013-04-16 02:10:03 +00:00
* [Monolog](https://github.com/Seldaek/monolog) - A comprehensive logger.
* [KLogger](https://github.com/katzgrau/KLogger) - An easy-to-use PSR-3 compliant logging class.
2015-01-12 12:43:53 +00:00
* [Analog](https://github.com/jbroadway/analog) - A closure-based micro logging package.
2013-04-16 02:10:03 +00:00
## E-commerce
*Libraries and applications for taking payments and building online e-commerce stores.*
2013-04-16 02:10:03 +00:00
* [OmniPay](https://github.com/thephpleague/omnipay) - A framework agnostic multi-gateway payment processing library.
2013-06-18 15:57:53 +00:00
* [Payum](https://github.com/payum/payum) - A payment abstraction library.
* [Sylius](http://sylius.org/) - An open source e-commerce solution.
* [Thelia](http://thelia.net/) - Another open source e-commerce solution.
* [Money](https://github.com/mathiasverraes/money) - A PHP implementation of Fowler's money pattern.
2014-05-27 00:00:37 +00:00
* [Sebastian Money](https://github.com/sebastianbergmann/money) - Another library for working with monetary values.
2014-05-26 23:59:17 +00:00
* [Swap](https://github.com/florianv/swap) - An exchange rates library.
2013-04-16 02:10:03 +00:00
## PDF
*Libraries and software for working with PDF files.*
2013-04-16 02:10:03 +00:00
* [Snappy](https://github.com/KnpLabs/snappy) - A PDF and image generation library.
* [WKHTMLToPDF](https://github.com/wkhtmltopdf/wkhtmltopdf) - A tool to convert HTML to PDF.
2014-08-25 21:50:39 +00:00
* [PHPPdf](https://github.com/psliwa/PHPPdf) - A library for generating PDFs and images from XML.
2013-04-16 02:10:03 +00:00
## Office
*Libraries for working with office suite documents.*
* [PHPWord](https://github.com/PHPOffice/PHPWord) - A library for working with Microsoft Word documents.
* [PHPExcel](https://github.com/PHPOffice/PHPExcel) - A library for working with Microsoft Excel documents.
* [PHPPowerPoint](https://github.com/PHPOffice/PHPPresentation) - A library for working with Microsoft PowerPoint Presentations.
* [ExcelAnt](https://github.com/Wisembly/ExcelAnt) - A library for manipulating Microsoft Excel documents.
## Database
*Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.*
2013-04-16 02:10:03 +00:00
* [Doctrine](http://www.doctrine-project.org/) - A comprehensive DBAL and ORM.
* [Doctrine Extensions](https://github.com/l3pp4rd/DoctrineExtensions) - A collection of Doctrine behavioural extensions.
* [Propel](http://propelorm.org/) - A fast ORM, migration library and query builder.
2015-08-04 07:42:48 +00:00
* [Eloquent](https://github.com/illuminate/database) - A simple ORM (L5).
2013-05-09 01:20:16 +00:00
* [Baum](https://github.com/etrepat/baum) - A nested set implementation for Eloquent.
* [Spot2](https://github.com/vlucas/spot2) - A MySQL datamapper ORM.
* [RedBean](http://redbeanphp.com/index.php) - A lightweight, configuration-less ORM.
2013-06-26 16:56:31 +00:00
* [Pomm](https://github.com/chanmix51/Pomm) - An Object Model Manager for PostgreSQL.
* [ProxyManager](https://github.com/Ocramius/ProxyManager) - A set of utilities to generate proxy objects for data mappers.
2015-04-11 14:13:03 +00:00
* [Cake ORM](https://github.com/cakephp/orm) - Object-Relational Mapper, implemented using the DataMapper pattern (CP).
## Migrations
Libraries to help manage database schemas and migrations.
2013-06-18 22:19:14 +00:00
* [PHPMig](https://github.com/davedevelopment/phpmig) - Another migration management library.
2013-04-16 02:10:03 +00:00
* [Phinx](https://github.com/robmorgan/phinx) - Another database migration library.
* [Migrations](https://github.com/icomefromthenet/Migrations) - A migration management library.
* [Doctrine Migrations](http://docs.doctrine-project.org/projects/doctrine-migrations/en/latest/toc.html) - A migration library for Doctrine.
2013-04-16 02:10:03 +00:00
## NoSQL
*Libraries for working with "NoSQL" backends.*
2013-04-16 02:10:03 +00:00
* [MongoQB](https://github.com/alexbilbie/MongoQB) - A MongoDB query builder library.
2014-03-18 06:35:24 +00:00
* [Monga](https://github.com/thephpleague/monga) - A MongoDB abstraction library.
2013-04-16 02:10:03 +00:00
* [Predis](https://github.com/nrk/predis) - A feature complete Redis library.
2013-05-01 04:45:21 +00:00
## Queue
*Libraries for working with event and task queues.*
2013-05-01 04:45:21 +00:00
* [Pheanstalk](https://github.com/pda/pheanstalk) - A Beanstalkd client library.
* [PHP AMQP](https://github.com/videlalvaro/php-amqplib) - A pure PHP AMQP library.
2013-05-31 18:08:25 +00:00
* [Thumper](https://github.com/videlalvaro/Thumper) - A RabbitMQ pattern library.
* [Bernard](https://github.com/bernardphp/bernard) - A multibackend abstraction library.
2013-05-01 04:45:21 +00:00
2013-06-18 22:26:23 +00:00
## Search
*Libraries and software for indexing and performing search queries on data.*
2013-06-18 22:26:23 +00:00
* [ElasticSearch PHP](https://github.com/elastic/elasticsearch-php) - The official client library for [ElasticSearch](https://www.elastic.co/).
2013-10-24 16:13:33 +00:00
* [Elastica](https://github.com/ruflin/Elastica) - A client library for ElasticSearch.
2013-12-03 18:44:01 +00:00
* [Solarium](http://www.solarium-project.org/) - A client library for [Solr](http://lucene.apache.org/solr/).
2014-11-10 17:12:14 +00:00
* [SphinxQL query builder](http://foolcode.github.io/SphinxQL-Query-Builder/) - A query library for the [Sphinx](http://sphinxsearch.com/) search engine.
2013-06-18 22:26:23 +00:00
2013-04-16 02:10:03 +00:00
## Command Line
2015-06-16 18:37:54 +00:00
*Libraries related to the command line.*
2013-04-16 02:10:03 +00:00
* [Boris](https://github.com/borisrepl/boris) - A tiny PHP REPL.
2014-02-28 20:18:26 +00:00
* [PsySH](https://github.com/bobthecow/psysh) - Another PHP REPL.
2014-05-27 00:35:09 +00:00
* [Pecan](https://github.com/mcrumm/pecan) - An event-driven, non-blocking shell.
2013-04-16 02:10:03 +00:00
* [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.
* [GetOptionKit](https://github.com/c9s/GetOptionKit) - Another command line opt parser.
2013-04-16 02:10:03 +00:00
* [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.
2013-10-15 19:24:27 +00:00
* [Hoa Console](https://github.com/hoaproject/Console) - Another command line library.
* [Shunt](https://github.com/thephpleague/shunt) - A library for running commands in parallel on multiple remote machines.
2014-11-10 17:32:56 +00:00
* [Cilex](https://github.com/Cilex/Cilex) - A micro framework for building command line tools.
2015-08-10 16:53:42 +00:00
* [CLImate](https://github.com/thephpleague/climate) - A library for outputting colours and special formatting.
2016-01-28 23:11:57 +00:00
* [CLI Menu](https://github.com/php-school/cli-menu) - A library for building CLI menus.
2013-04-16 02:10:03 +00:00
## Authentication and Authorization
*Libraries for implementing user authentication and authorization.*
2013-04-16 02:10:03 +00:00
2015-09-25 01:23:41 +00:00
* [Sentinel](https://cartalyst.com/manual/sentinel/2.0) - A framework agnostic authentication & authorisation library.
* [Sentinel Social](https://cartalyst.com/manual/sentinel-social/2.0) - A library for social network authentication.
2014-08-12 01:43:13 +00:00
* [Opauth](https://github.com/opauth/opauth) - A multi-provider authentication framework.
2015-02-07 02:40:26 +00:00
* [OAuth2 Server](http://oauth2.thephpleague.com/) - An OAuth2 authentication server, resource server and client library.
2014-07-12 00:50:09 +00:00
* [OAuth2 Server](http://bshaffer.github.io/oauth2-server-php-docs/) - Another OAuth2 server implementation.
2014-06-27 15:08:41 +00:00
* [PHP oAuthLib](https://github.com/Lusitanian/PHPoAuthLib) - Another OAuth library.
2013-04-16 02:10:03 +00:00
* [TwitterOAuth](https://github.com/ruudk/twitteroauth) - A Twitter OAuth library.
2014-01-05 22:57:29 +00:00
* [TwitterSDK](https://github.com/lyrixx/twitter-sdk) - A fully tested Twitter SDK.
2013-08-08 15:32:23 +00:00
* [Hawk](https://github.com/dflydev/dflydev-hawk) - A Hawk HTTP authentication library.
2014-07-12 00:50:09 +00:00
* [HybridAuth](https://github.com/hybridauth/hybridauth) - An open source social sign on library.
* [Lock](https://github.com/BeatSwitch/lock) - A library for implementing Access Control Lists (ACL) systems.
* [OAuth 1.0 Client](https://github.com/thephpleague/oauth1-client) - An OAuth 1.0 client library.
* [OAuth 2.0 Client](https://github.com/thephpleague/oauth2-client) - An OAuth 2.0 client library.
2013-04-16 02:10:03 +00:00
## Markup
*Libraries for working with markup.*
2013-04-16 02:10:03 +00:00
* [Decoda](https://github.com/milesj/decoda) - A lightweight markup parser library.
* [PHP Markdown](https://github.com/michelf/php-markdown) - A Markdown parser.
2015-08-21 12:40:26 +00:00
* [CommonMark PHP](https://github.com/thephpleague/commonmark) - A Markdown parser which supports the full [CommonMark spec](http://spec.commonmark.org/).
* [Parsedown](https://github.com/erusev/parsedown) - Another Markdown parser.
* [Ciconia](https://github.com/kzykhys/Ciconia) - Another Markdown parser that supports Github flavoured Markdown.
2014-07-10 20:25:34 +00:00
* [Cebe Markdown](https://github.com/cebe/markdown) - An fast and extensible Markdown parser.
2013-06-09 07:39:32 +00:00
* [HTML5 PHP](https://github.com/Masterminds/html5-php) - An HTML5 parser and serializer library.
2015-07-18 18:14:40 +00:00
* [Emoji](https://github.com/heyupdate/Emoji) - A library that converts unicode characters and names into emoji images.
2013-04-16 02:10:03 +00:00
## Strings
*Libraries for parsing and manipulating strings.*
2013-04-16 02:10:03 +00:00
2014-07-15 13:14:29 +00:00
* [ANSI to HTML5](https://github.com/sensiolabs/ansi-to-html) - An ANSI to HTML5 converter library.
2013-04-16 02:10:03 +00:00
* [Patchwork UTF-8](https://github.com/nicolas-grekas/Patchwork-UTF8) - A portable library for working with UTF-8 strings.
2013-10-15 19:24:27 +00:00
* [Hoa String](https://github.com/hoaproject/String) - Another UTF-8 string library.
* [Stringy](https://github.com/danielstjules/Stringy) - A string manipulation library with multibyte support.
2012-10-09 15:32:39 +00:00
* [Color Jizz](https://github.com/mikeemoo/ColorJizz-PHP) - A library for manipulating and converting colours.
2013-04-17 20:44:34 +00:00
* [UUID](https://github.com/ramsey/uuid) - A library for generating UUIDs.
2013-04-18 16:32:42 +00:00
* [Slugify](https://github.com/cocur/slugify) - A library to convert strings to slugs.
2013-05-30 19:34:47 +00:00
* [Urlify](https://github.com/jbroadway/urlify) - A PHP port of Django's URLify.js.
2013-08-08 18:03:53 +00:00
* [Text](https://github.com/kzykhys/Text) - A text manipulation library.
2014-06-27 15:08:41 +00:00
* [SQL Formatter](https://github.com/jdorn/sql-formatter/) - A library for formatting SQL statements.
2014-01-12 21:41:44 +00:00
* [UA Parser](https://github.com/tobie/ua-parser/tree/master/php) - A library for parsing user agent strings.
* [Device Detector](https://github.com/piwik/device-detector) - Another library for parsing user agent strings.
* [Mobile-Detect](https://github.com/serbanghita/Mobile-Detect) - A lightweight PHP class for detecting mobile devices (including tablets).
## Numbers
*Libraries for working with numbers.*
* [Numbers PHP](https://github.com/powder96/numbers.php) - A library for working with numbers.
* [Math](https://github.com/moontoast/math) - A library for working with large numbers.
* [ByteUnits](https://github.com/gabrielelana/byte-units) - A library to parse, format and convert byte units in binary and metric systems.
* [PHP Units of Measure](https://github.com/triplepoint/php-units-of-measure) - A library for converting between units of measure.
* [PHP Conversion](https://github.com/Crisu83/php-conversion) - Another library for converting between units of measure.
2014-01-12 21:55:11 +00:00
* [LibPhoneNumber for PHP](https://github.com/giggsey/libphonenumber-for-php) - A PHP implementation of Google's phone number handling library.
2013-04-16 02:10:03 +00:00
## Filtering and Validation
*Libraries for filtering and validating data.*
2013-04-16 02:10:03 +00:00
* [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library.
2015-10-24 04:17:42 +00:00
* [Respect Validation](https://github.com/Respect/Validation) - A simple validation library.
2013-03-14 14:24:04 +00:00
* [Valitron](https://github.com/vlucas/valitron) - Another validation library.
2015-04-11 14:13:03 +00:00
* [Cake Validation](https://github.com/cakephp/validation) - Another validation library (CP).
* [Upload](https://github.com/brandonsavage/Upload) - A library for handling file uploads and validation.
2013-07-10 19:11:19 +00:00
* [DMS Filter](https://github.com/rdohms/DMS-Filter) - An annotation filtering library.
2014-01-06 17:37:18 +00:00
* [MetaYaml](https://github.com/romaricdrigon/MetaYaml) - A schema validation library that supports YAML, JSON and XML.
2014-06-29 04:48:43 +00:00
* [ISO-codes](https://github.com/ronanguilloux/IsoCodes) - A library for validating various ISO and ZIP codes (IBAN, SWIFT/BIC, BBAN, VAT, SSN, UKNIN).
2013-04-16 02:10:03 +00:00
2015-05-19 20:26:04 +00:00
## API
*Libraries and web tools for developing APIs.*
2013-04-16 02:10:03 +00:00
2013-10-08 21:27:06 +00:00
* [Apigility](https://github.com/zfcampus/zf-apigility-skeleton) - An API builder built with Zend Framework 2.
2012-11-08 16:28:37 +00:00
* [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library.
2012-12-04 16:53:02 +00:00
* [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library.
2013-06-18 15:57:53 +00:00
* [Negotiation](https://github.com/willdurand/Negotiation) - A content negotiation library.
2014-10-19 02:18:36 +00:00
* [Drest](https://github.com/leedavis81/drest) - A library for exposing Doctrine entities as REST resource endpoints.
2014-12-01 01:17:22 +00:00
* [Restler](https://github.com/Luracast/Restler) - A lightweight framework to expose PHP methods as RESTful web API.
2015-05-19 20:26:04 +00:00
* [wsdl2phpgenerator](https://github.com/wsdl2phpgenerator/wsdl2phpgenerator) - A tool to generate PHP classes from SOAP WSDL files.
2013-04-16 02:10:03 +00:00
## Caching
*Libraries for caching data.*
2013-04-16 02:10:03 +00:00
* [Alternative PHP Cache (APC)](http://php.net/manual/en/book.apc.php) - Open opcode cache for PHP.
2015-07-18 18:11:34 +00:00
* [Doctrine Cache](https://github.com/doctrine/cache) - A caching library.
* [Zend Cache](https://github.com/zendframework/zend-cache) - Another caching library (ZF2).
2015-04-11 14:13:03 +00:00
* [Cake Cache](https://github.com/cakephp/cache) - A caching library (CP).
* [Stash](https://github.com/tedious/Stash) - Another library for caching.
2015-07-29 22:58:06 +00:00
* [CacheTool](https://github.com/gordalina/cachetool) - A tool to clear APC/opcode caches from the command line.
2013-04-16 02:10:03 +00:00
2013-06-25 22:09:11 +00:00
## Data Structure and Storage
2013-11-14 03:41:38 +00:00
*Libraries that implement data structure or storage techniques.*
2013-04-16 02:10:03 +00:00
* [Ardent](https://github.com/morrisonlevi/Ardent) - A library of data structures.
2013-01-21 23:15:40 +00:00
* [PHP Collections](https://github.com/schmittjoh/php-collection) - A simple collections library.
2013-06-18 22:26:23 +00:00
* [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data.
* [Zend Serializer](https://github.com/zendframework/zend-serializer) - Another library for serialising and de-serialising data (ZF2).
* [PHP Object Storage](https://github.com/kherge-abandoned/php-object-storage) - A library for object storage.
* [Fractal](https://github.com/thephpleague/fractal) - A library for converting complex data structures to JSON output.
2016-01-28 20:30:49 +00:00
* [Totem](https://github.com/Wisembly/Totem) - A library to manage and create data changesets.
2014-10-19 02:18:36 +00:00
* [PINQ](https://github.com/TimeToogo/Pinq) - A real Linq library for PHP.
* [JsonMapper](https://github.com/netresearch/jsonmapper) - A library that maps nested JSON structures onto PHP classes.
2015-04-11 14:13:03 +00:00
* [Cake Collection](https://github.com/cakephp/collection) - A simple collections library (CP).
2013-04-16 02:10:03 +00:00
2013-05-30 19:34:47 +00:00
## Notifications
*Libraries for working with notification software.*
2013-05-30 19:34:47 +00:00
2013-12-14 01:53:36 +00:00
* [Nod](https://github.com/filp/nod) - A notification library (e.g., Growl).
* [Notificato](https://github.com/mac-cain13/notificato) - A library for handling push notifications.
2013-06-18 15:57:53 +00:00
* [Notification Pusher](https://github.com/Ph3nol/NotificationPusher) - A standalone library for device push notifications.
2013-07-12 16:50:33 +00:00
* [Notificator](https://github.com/namshi/notificator) - A lightweight notification library.
2013-05-30 19:34:47 +00:00
## Deployment
2014-12-01 01:42:02 +00:00
*Libraries for project deployment.*
* [Pomander](https://github.com/tamagokun/pomander) - A deployment tool for PHP applications.
* [Rocketeer](https://github.com/rocketeers/rocketeer) - A fast and easy deployer for the PHP world.
2014-07-12 04:14:18 +00:00
* [Envoy](https://github.com/laravel/envoy) - A tool to run SSH tasks with PHP.
2014-08-23 17:14:17 +00:00
* [Plum](https://github.com/aerialls/Plum) - A deployer library.
2015-01-24 22:38:57 +00:00
* [Deployer](https://github.com/deployphp/deployer) - A deployment tool.
2014-12-01 01:42:02 +00:00
## Internationalisation and Localisation
2014-12-02 01:26:03 +00:00
*Libraries for Internationalization (I18n) and Localization (L10n).*
2014-07-26 10:47:52 +00:00
2015-01-23 17:31:28 +00:00
* [Aura Intl](https://github.com/auraphp/Aura.Intl)
2015-04-11 14:13:03 +00:00
* [Cake I18n](https://github.com/cakephp/i18n) - Message translation and localization for dates and numbers (CP)
2014-07-26 10:47:52 +00:00
## Third Party APIs
*Libraries for accessing third party APIs.*
* [Amazon Web Service SDK](https://github.com/aws/aws-sdk-php) - The official PHP AWS SDK library.
* [S3 Stream Wrapper](https://github.com/gwkunze/S3StreamWrapper) - A stream wrapper library for Amazon S3.
* [Stripe](https://github.com/stripe/stripe-php) - The official Stripe PHP library.
2016-01-28 20:30:49 +00:00
* [Campaign Monitor](http://campaignmonitor.github.io/createsend-php/) - The official Campaign Monitor PHP library.
* [Digital Ocean](https://github.com/toin0u/DigitalOcean) - A library to interface with the Digital Ocean API.
* [Github](https://github.com/dsyph3r/github-api3-php) - A library to interface with the Github API.
* [PHP Github API](https://github.com/KnpLabs/php-github-api) - Another library to interface with the Github API.
2013-12-14 01:51:17 +00:00
* [Twitter OAuth](https://github.com/widop/twitter-oauth) - A library to interface with Twitter's OAuth workflow.
* [Twitter REST](https://github.com/widop/twitter-rest) - A library to interact with Twitter's REST API.
2013-12-14 01:51:59 +00:00
* [Dropbox SDK](https://github.com/dropbox/dropbox-sdk-php) - The official PHP Dropbox SDK library.
2014-01-12 21:53:06 +00:00
* [Twilio](https://github.com/twilio/twilio-php) - The official Twilio PHP REST API.
2014-07-12 00:50:09 +00:00
* [Mailgun](https://github.com/mailgun/mailgun-php) The official Mailgun PHP API.
## Extensions
*Libraries to help build PHP extensions.*
2014-08-20 14:53:24 +00:00
* [Zephir](https://github.com/phalcon/zephir) - A compiled language between PHP and C++ for developing PHP extensions.
* [PHP CPP](http://www.php-cpp.com/) - A C++ library for developing PHP extensions.
2013-04-16 02:10:03 +00:00
## Miscellaneous
*Useful libraries or tools that don't fit in the categories above.*
2013-04-16 02:10:03 +00:00
* [Spork](https://github.com/kriswallsmith/spork) - A process forking library.
* [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility.
* [JSONPCallbackValidator](https://github.com/willdurand/JsonpCallbackValidator) - A library for validating JSONP callbacks.
2013-04-16 02:10:03 +00:00
* [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library.
2013-03-05 17:56:01 +00:00
* [LiteCQRS](https://github.com/beberlei/litecqrs-php) - A CQRS (Command Query Responsibility Separation) library.
2015-01-14 16:13:41 +00:00
* [Chief](https://github.com/adamnicholson/Chief) - A command bus library.
2013-04-16 02:10:03 +00:00
* [Sslurp](https://github.com/EvanDotPro/Sslurp) - A library that makes dealing with SSL suck less.
* [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).
2013-04-11 17:59:41 +00:00
* [Whoops](https://github.com/filp/whoops) - A pretty error handling library.
2013-03-19 16:08:22 +00:00
* [LadyBug](https://github.com/raulfraile/Ladybug) - A dumper library.
2015-08-03 23:15:26 +00:00
* [Symfony VarDumper](http://symfony.com/doc/current/components/var_dumper/introduction.html) - A variable dumper component (SF2).
2013-04-09 15:40:13 +00:00
* [Procrastinator](https://github.com/lstrojny/Procrastinator) - A library for running time consuming tasks.
2013-05-30 17:35:36 +00:00
* [SuperClosure](https://github.com/jeremeamia/super_closure) - A library that allows Closures to be serialized.
2013-06-18 15:57:53 +00:00
* [Jumper](https://github.com/kakawait/Jumper) - A remote service executor library.
2014-07-06 20:40:51 +00:00
* [Underscore](http://anahkiasen.github.io/underscore-php/) - A PHP port of the Underscore JS library.
2013-06-09 07:39:32 +00:00
* [PHP PassBook](https://github.com/eymengunay/php-passbook) - A PHP library for iOS PassBook.
2013-06-18 15:57:53 +00:00
* [PHP Expression](https://github.com/Kitano/php-expression) - A PHP expression language.
* [RMT](https://github.com/liip/RMT) - A library for versioning and releasing software.
* [Wise](https://github.com/kherge-abandoned/php-wise) - A configuration manager.
2013-06-19 16:44:13 +00:00
* [Opengraph](https://github.com/euskadi31/Opengraph) - An opengraph library.
* [Essence](https://github.com/essence/essence) - A library for extracting web media.
2013-07-16 15:54:22 +00:00
* [Embera](https://github.com/mpratt/Embera) - An Oembed consumer library.
2013-07-12 16:50:33 +00:00
* [Graphviz](https://github.com/alexandresalome/graphviz) - A Graphviz library.
2013-08-13 17:29:26 +00:00
* [Flux](https://github.com/selvinortiz/flux) - A regular expression building library.
2013-09-11 16:27:51 +00:00
* [PHPCR](https://github.com/phpcr/phpcr) - A PHP port of the Java Content Repository (JCR).
* [ClassPreloader](https://github.com/ClassPreloader/ClassPreloader) - A library for optimising autoloading.
* [Lib Country](https://github.com/kherge-abandoned/lib-country) - A library for country and subdivision data.
* [PHPStack](http://dunkels.com/adam/phpstack/) - A TCP/IP stack proof of concept written in PHP.
* [Nmap](https://github.com/willdurand/nmap) - A PHP wrapper around [Nmap](https://nmap.org/).
2014-01-12 21:57:27 +00:00
* [Lambda PHP](https://github.com/igorw/lambda-php) - A Lambda calculus interpreter in PHP.
* [Country List](https://github.com/umpirsky/country-list) - A list of all countries with names and ISO 3166-1 codes.
2014-01-05 22:58:43 +00:00
* [PHP-GPIO](https://github.com/ronanguilloux/php-gpio) - A library for playing with the Raspberry PI's GPIO pins.
2014-07-28 15:53:44 +00:00
* [print_o](https://github.com/koriym/print_o) - An object graph visualizer.
* [Alias](https://github.com/fuelphp/alias) - A class aliasing library.
2015-04-11 14:13:03 +00:00
* [Cake Utility](https://github.com/cakephp/utility) - Utility classes such as Inflector, String, Hash, Security and Xml (CP).
2016-01-29 20:08:50 +00:00
* [Slimdump](https://github.com/webfactory/slimdump) - An easy dumper tool for MySQL.
2012-04-12 02:04:30 +00:00
# Software
*Software for creating a development environment.*
2012-08-13 17:56:40 +00:00
## PHP Installation
*Tools to help install and manage PHP on your computer.*
2016-01-27 21:51:40 +00:00
* [HomeBrew](http://brew.sh/) - A package manager for OSX.
* [HomeBrew PHP](https://github.com/Homebrew/homebrew-php) - A PHP tap for HomeBrew.
2013-06-13 15:52:10 +00:00
* [PHP OSX](http://php-osx.liip.ch/) - A PHP installer for OSX.
* [PHP Brew](https://github.com/phpbrew/phpbrew) - A PHP version manager and installer.
2012-12-18 22:24:35 +00:00
* [PHP Env](https://github.com/CHH/phpenv) - Another PHP version manager.
2013-03-18 20:26:40 +00:00
* [PHP Switch](https://github.com/jubianchi/phpswitch) - Another version manager.
* [PHP Build](https://github.com/php-build/php-build) - Another PHP version installer.
* [VirtPHP](http://virtphp.org/) - A tool for creating and managing isolated PHP environments.
## Development Environment
*Software and tools for creating a sandboxed development environment.*
* [Vagrant](https://www.vagrantup.com/) - A portable development environment utility.
* [Ansible](http://www.ansible.com/) - A radically simple orchestration framework.
* [Puppet](https://puppetlabs.com/) - A server automation framework and application.
2014-01-12 21:48:09 +00:00
* [PuPHPet](https://puphpet.com/) - A web tool for building PHP development virtual machines.
* [Protobox](http://getprotobox.com/) - Another web tool for building PHP development virtual machines.
2014-06-29 04:38:53 +00:00
* [Phansible](http://phansible.com/) - A web tool for building PHP development virtual machines with Ansible.
## Virtual Machines
*Alternative PHP virtual machines.*
* [HHVM](https://github.com/facebook/hhvm) - A Virtual Machine, Runtime and JIT for PHP by Facebook.
* [HippyVM](http://hippyvm.com/) - Another PHP virtual machine.
* [Hack](http://hacklang.org/) - A programming language for HHVM that interoperates seamlessly with PHP.
2014-07-12 00:30:23 +00:00
2014-10-30 00:09:53 +00:00
## Integrated Development Environment
2014-10-30 00:10:32 +00:00
*Integrated Development Environments with support for PHP.*
2014-10-30 00:09:53 +00:00
* [Netbeans](https://netbeans.org) - An IDE with support for PHP and HTML5.
* [Eclipse for PHP Developers](https://www.eclipse.org/downloads/) - A PHP IDE based on the Eclipse platform.
* [PhpStorm](http://www.jetbrains.com/phpstorm/) - A commercial PHP IDE.
## Web Applications
*Web-based applications and tools.*
* [3V4L](https://3v4l.org/) - An online PHP & HHVM shell.
* [DBV](http://dbv.vizuina.com/) - A database version control application.
* [PHP Queue](https://github.com/CoderKungfu/php-queue) - An application for managing queueing backends.
2014-01-12 21:46:46 +00:00
* [MailCatcher](https://github.com/sj26/mailcatcher) - A web tool for capturing and viewing emails.
2015-03-06 11:07:03 +00:00
* [Cachet](https://github.com/cachethq/cachet) - The open source status page system.
2012-08-13 19:27:30 +00:00
2015-08-10 16:42:32 +00:00
## Infrastructure
*Infrastructure for providing PHP applications and services.*
* [appserver.io](http://appserver.io/) - A multithreaded application server for PHP, written in PHP.
2012-08-13 19:27:30 +00:00
# Resources
Various resources, such as books, websites and articles, for improving your PHP development skills and knowledge.
2014-07-11 23:32:09 +00:00
## PHP Websites
2014-07-12 00:17:34 +00:00
*Useful PHP-related websites.*
2012-08-13 19:27:30 +00:00
* [PHP The Right Way](http://www.phptherightway.com/) - A PHP best practice quick reference guide.
* [PHP Best Practices](https://phpbestpractices.org/) - A PHP best practice guide.
* [PHP Weekly](http://www.phpweekly.com/archive.html) - A weekly PHP newsletter.
2015-01-05 05:36:16 +00:00
* [Securing PHP](http://securingphp.com/) - A newsletter about PHP security and library recommendations.
2012-08-13 19:27:30 +00:00
* [PHP Security](http://phpsecurity.readthedocs.org/en/latest/index.html) - A guide to PHP security.
* [PHP FIG](http://www.php-fig.org/) - The PHP Framework Interoperability Group.
2014-07-10 19:50:16 +00:00
* [PHP UG](http://php.ug) - A website to help people locate their nearest PHP user group (UG).
2014-07-12 00:17:34 +00:00
* [Seven PHP](http://7php.com/) - A website that interviews members of the PHP community.
* [Nomad PHP](https://nomadphp.com/) - A online PHP learning resource.
* [PHP Mentoring](http://phpmentoring.org/) - Peer to peer PHP mentorship organization.
2014-07-12 00:17:34 +00:00
## Other Websites
*Useful websites related to web development.*
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.
* [WebSec IO](https://websec.io/) - A web security community resource.
2014-07-12 00:17:34 +00:00
* [Semantic Versioning](http://semver.org/) - A website explaining semantic versioning.
* [Atlassian Git Tutorials](https://www.atlassian.com/git/) - A series of Git tutorials.
2014-07-12 00:17:34 +00:00
* [Hg Init](http://hginit.com/) - A series of Mercurial tutorials.
* [Servers for Hackers](https://serversforhackers.com/) - A newsletter about server management.
2013-04-16 02:10:03 +00:00
2014-07-12 00:17:34 +00:00
## PHP Books
*Fantastic PHP-related books.*
2013-04-16 02:10:03 +00:00
2016-01-28 23:27:41 +00:00
* [PHP 7 Upgrade Guide](https://leanpub.com/php7) - An ebook covering all of the features and changes in PHP 7 by Colin O'Dell.
2016-01-28 23:21:25 +00:00
* [PHP Pandas](http://daylerees.com/php-pandas/) - A book about learning to write PHP by Dayle Rees.
2013-06-18 15:57:53 +00:00
* [Scaling PHP Applications](http://www.scalingphpbook.com) - An ebook about scaling PHP applications by Steve Corona.
2014-07-12 00:42:55 +00:00
* [The Grumpy Programmer's Guide to Building Testable PHP Applications](https://leanpub.com/grumpy-testing) - A book about building testing PHP applications by Chris Hartjes.
2013-03-05 15:51:21 +00:00
* [Grumpy PHPUnit](https://leanpub.com/grumpy-phpunit) - A book about unit testing with PHPUnit by Chris Hartjes.
* [Mastering Object-Orientated PHP](http://www.brandonsavage.net) - A book about object-orientated PHP by Brandon Savage.
* [Signaling PHP](https://leanpub.com/signalingphp) - A book about catching PCNTL signals in CLI scripts by Cal Evans.
2014-07-12 00:17:34 +00:00
* [Securing PHP: Core Concepts](https://leanpub.com/securingphp-coreconcepts) - A book about common security terms and practices for PHP by Chris Cornutt.
2014-07-12 00:42:55 +00:00
* [Modernising Legacy Applications in PHP](https://leanpub.com/mlaphp) - A book about modernising legacy PHP applications by Paul M. Jones.
* [Modern PHP New Features and Good Practices](http://shop.oreilly.com/product/0636920033868.do) - A book about new PHP features and best practices by Josh Lockhart.
2014-07-12 00:17:34 +00:00
## Other Books
2014-07-12 00:18:08 +00:00
*Books related to general computing and web development.*
2014-07-12 00:17:34 +00:00
* [The Linux Command Line](http://linuxcommand.org/tlcl.php) - A book about the Linux command line by William Shotts.
2014-07-12 00:17:34 +00:00
* [Understanding Computation](http://computationbook.com) - A book about computation theory by Tom Stuart.
2014-07-12 00:42:55 +00:00
* [The Tangled Web — Securing Web Applications](http://www.amazon.ca/The-Tangled-Web-Securing-Applications/dp/1593273886) - A book about securing web applications by Michal Zalewski.
* [Elasticsearch: The Definitive Guide](https://www.elastic.co/guide/index.html) - A guide to working with Elasticsearch by Clinton Gormley and Zachary Tong.
2014-07-31 01:32:30 +00:00
* [Eloquent JavaScript](http://eloquentjavascript.net/) - A book about JavaScript programming by Marijn Haverbeke.
2015-07-29 23:05:38 +00:00
* [Vagrant Cookbook](https://leanpub.com/vagrantcookbook) - A book about creating Vagrant environments by Erika Heidi.
2014-12-02 02:00:13 +00:00
* [Pro Git](http://git-scm.com/book/en/v2) - A book about Git by Scott Chacon and Ben Straub.
2015-08-03 23:04:46 +00:00
* [Head First Design Patterns](http://www.headfirstlabs.com/books/hfdp/) - A book that expains software design patterns.
2014-07-12 00:22:52 +00:00
## PHP Videos
*Fantastic PHP-related videos.*
* [Taking PHP Seriously](http://www.infoq.com/presentations/php-history) - A talk outlining PHP's strengths by Keith Adams of Facebook.
* [PHP Town Hall](http://phptownhall.com/) - A casual PHP podcast by Ben Edmunds and Phil Sturgeon.
* [Programming with Anthony](https://www.youtube.com/playlist?list=PLM-218uGSX3DQ3KsB5NJnuOqPqc5CW2kW) - A video series by Anthony Ferrara.
* [PHP UK Conference](https://www.youtube.com/user/phpukconference/videos) - A collection of videos from the PHP UK Conference.
2014-07-12 00:22:52 +00:00
## PHP Reading
*PHP-releated reading materials.*
* [Create Your Own PHP Framework](http://fabien.potencier.org/create-your-own-framework-on-top-of-the-symfony2-components-part-1.html) - A series of articles on how to make your own PHP framework by Fabien Potencier.
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-10-02 17:36:34 +00:00
* [Don't Worry About BREACH](http://blog.ircmaxell.com/2013/08/dont-worry-about-breach.html) - An article about the BREACH hack and CSRF tokens.
* [On PHP 5.3, Lamda Functions and Closures](http://fabien.potencier.org/on-php-5-3-lambda-functions-and-closures.html) - 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.
* [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.
* [Innocent Villagefolk or a Pillagin Pirate?](http://blog.astrumfutura.com/2012/04/php-innocent-villagefolk-or-a-pillagin-pirate/) - An article about PHP taking ideas from other language.
* [Predicting Random Numbers in PHP](http://blog.astrumfutura.com/2013/03/predicting-random-numbers-in-php-its-easier-than-you-think/) - An article about generating random numbers.
* [A 20 Point List for Preventing XSS in PHP](http://blog.astrumfutura.com/2013/04/20-point-list-for-preventing-cross-site-scripting-in-php/) - An article about preventing XSS.
* [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.
* [PHP Is Much Better Than You Think](http://fabien.potencier.org/php-is-much-better-than-you-think.html) - An article about the PHP language and ecosystem.
## PHP Internals Reading
*Reading materials related to the PHP internals or performance.*
2013-12-14 02:01:43 +00:00
* [PHP RFCs](https://wiki.php.net/rfc) - The home of PHP RFCs (Request for Comments).
2014-07-10 19:26:59 +00:00
* [PHP Internals Book](http://www.phpinternalsbook.com) - An online book about PHP internals, written by three core developers.
* [Print vs Echo, Which One is Faster?](http://fabien.potencier.org/print-vs-echo-which-one-is-faster.html) - An article about print and echo performance.
* [The PHP Ternary Operator. Fast or Not?](http://fabien.potencier.org/the-php-ternary-operator-fast-or-not.html) - An article ternary performance.
2016-01-28 20:30:49 +00:00
* [Disproving the Single Quotes Myth](http://nikic.github.io/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.
* [How Foreach Works](http://stackoverflow.com/questions/10057671/how-does-foreach-actually-work/14854568#14854568) - A detailed StackOverflow answer about foreach.
2016-01-28 20:30:49 +00:00
* [When Does Foreach Copy?](http://nikic.github.io/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.io/2011/12/12/How-big-are-PHP-arrays-really-Hint-BIG.html) - An article about array internals.
2014-11-19 18:31:08 +00:00
* [Why Objects (Usually) Use Less Memory Than Arrays](https://gist.github.com/nikic/5015323) - An article about object and array internals.
2013-09-30 20:21:32 +00:00
* [PHP Evaluation Order](https://gist.github.com/nikic/6699370) - An article about evaluation order in PHP.
2016-01-28 20:30:49 +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.io/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.io/2012/03/28/Understanding-PHPs-internal-array-implementation.html) - A series about the PHP source code.
2016-01-28 21:38:03 +00:00
* Collecting Garbage: [1](http://php.net/manual/en/features.gc.refcounting-basics.php) [2](http://php.net/manual/en/features.gc.collecting-cycles.php) [3](http://php.net/manual/en/features.gc.performance-considerations.php) - A series about the PHP garbage collection internals.
## PHP Magazines
*Fantastic PHP-related magazines.*
2016-01-28 20:30:49 +00:00
* [php[architect]](https://www.phparch.com/magazine/) - A monthly magazine dedicated to PHP.