66 KiB
Awesome PHP
A curated list of amazingly awesome PHP libraries, resources and shiny things.
Contributing
Please see CONTRIBUTING and CODE-OF-CONDUCT for details.
Table of Contents
- Awesome PHP
- Dependency Management
- Dependency Management Extras
- Frameworks
- Framework Extras
- Components
- Micro Frameworks
- Micro Framework Extras
- Routers
- Templating
- Static Site Generators
- HTTP
- Middlewares
- URL
- Files
- Streams
- Dependency Injection
- Imagery
- Testing
- Continuous Integration
- Documentation
- Security
- Passwords
- Code Analysis
- Architectural
- Debugging and Profiling
- Build Tools
- Task Runners
- Navigation
- Asset Management
- Geolocation
- Date and Time
- Event
- Logging
- E-commerce
- Office
- Database
- Migrations
- NoSQL
- Queue
- Search
- Command Line
- Authentication and Authorization
- Markup
- Strings
- Numbers
- Filtering and Validation
- API
- Caching
- Data Structure and Storage
- Notifications
- Deployment
- Internationalisation and Localisation
- Third Party APIs
- Extensions
- Miscellaneous
- Software
- Resources
- Contributing
Dependency Management
Libraries for dependency and package management.
- Composer Installers - A multi framework Composer library installer.
- Composer/Packagist - A package and dependency manager.
- Melody - A tool to build one file Composer scripts.
- Pickle - A PHP extension installer.
Dependency Management Extras
Extras related to dependency management.
- Composed - A library to parse your project's Composer environment at runtime.
- Composer Checker - A tool to validate Composer configurations.
- Composer Merge Plugin - A composer plugin to merge several composer.json files.
- Composition - A library to check your Composer environment at runtime.
- NameSpacer - A library to convert from underscores to namespaces.
- Patch Installer - A library to install patches using Composer.
- Prestissimo - A composer plugin which enables parallel install process.
- Satis - A static Composer repository generator.
- Toran Proxy - A static Composer repository and proxy.
Frameworks
Web development frameworks.
- Aura PHP - A framework of independent components.
- CakePHP - A rapid application development framework (CP).
- Laravel 5 - Another PHP framework (L5).
- Nette - Another framework comprised of individual components.
- Phalcon - A framework implemented as a C extension.
- PPI Framework 2 - An interoperability framework.
- Symfony 2 - A framework comprised of individual components (SF2).
- Yii2 - Another PHP framework.
- Zend Framework 2 - Another framework comprised of individual components (ZF2).
- Radar - An Action-Domain-Responder implementation for PHP.
- Ice - Another simple and fast PHP framework delivered as C-extension.
Framework Extras
Extras related to web development frameworks.
- CakePHP CRUD - A Rapid Application Development (RAD) plugin for CakePHP.
- Knp RAD Bundle - A Rapid Application Development (RAD) bundle for Symfony 2.
- Symfony CMF - A Content Management Framework to create custom CMS.
Components
Standalone components from web development frameworks and development groups.
- CakePHP Plugins - A directory of CakePHP plugins.
- Hoa Project - Another package of PHP components.
- League of Extraordinary Packages - A PHP package development group.
- Symfony2 Components - The components that make Symfony 2.
- Zend Framework 2 Components - The components that make Zend Framework.
Micro Frameworks
Micro frameworks and routers.
- Bullet PHP - A micro framework for building REST APIs.
- Lumen - A micro-framework by Laravel.
- Proton - A StackPHP compatible micro framework
- Silex - A micro framework built around Symfony2 components.
- Slim - Another simple micro framework.
Micro Framework Extras
Extras related to micro frameworks and routers.
- Silex Skeleton - A project skeleton for Silex.
- Silex Web Profiler - A web debug toolbar for Silex.
- Slim Skeleton - A skeleton for Slim.
- Slim View - A collection of custom views for Slim.
Routers
Libraries for handling application routing.
- Fast Route - A fast routing library.
- Klein - A flexible router.
- Pux - Another fast routing library.
- Route - A routing library built on top of Fast Route.
Templating
Libraries and tools for templating and lexing.
- Foil - Another native PHP templating library.
- Lex - A lightweight template parser.
- MtHaml - A PHP implementation of the HAML template language.
- Mustache - A PHP implementation of the Mustache template language.
- Phly Mustache - Another PHP implementation of the Mustache template language.
- PHPTAL - A PHP implementation of the TAL templating language.
- Plates - A native PHP templating library.
- Smarty - A template engine to complement PHP.
- Twig - A comprehensive templating language.
- Tale Jade - A PHP implementation of the Jade template language.
Static Site Generators
Tools for pre-processing content to generate web pages.
- Couscous - Couscous turns Markdown documentation into beautiful websites. It's GitHub Pages on steroids.
- Phrozn - Another tool that converts Textile, Markdown and Twig into HTML.
- Sculpin - A tool that converts Markdown and Twig into static HTML.
- Spress - An extensible tool that converts Markdown and Twig into HTML.
HTTP
Libraries for working with HTTP.
- Buzz - Another HTTP client.
- Guzzle - A comprehensive HTTP client.
- HTTPFul - A chainable HTTP client.
- PHP VCR - A library for recording and replaying HTTP requests.
- Requests - A simple HTTP library.
- Retrofit - A library to ease creation of REST API clients.
- zend-diactoros - PSR-7 HTTP Message implementation.
Scraping
Libraries for scraping websites.
- Embed - An information extractor from any web service or page.
- Goutte - A simple web scraper.
- PHP Spider - A configurable and extensible PHP web spider.
Middlewares
Libraries for building application using middlewares.
- Expressive - PSR-7 Middleware framework from Zend
- PSR7-Middlewares - Inspiring collection of handy middlewares.
- Relay - A PHP 5.5 PSR-7 middleware dispatcher
- Slim Middleware - A collection of custom middleware for Slim.
- Stack - A library of stackable middleware for Silex/Symfony.
- zend-stratigility - Middleware for PHP built on top of PSR-7
URL
Libraries for parsing URLs.
- PHP Domain Parser - A domain suffix parser library.
- Purl - A URL manipulation library.
- sabre/uri - A functional URI manipulation library.
- Uri - Another URL manipulation library.
Libraries for sending and parsing email.
- CssToInlineStyles - A library to inline CSS in email templates.
- Email Reply Parser - An email reply parser library.
- Email Validator - A small email address validation library.
- Fetch - An IMAP library.
- Mautic - Email marketing automation
- PHPMailer - Another mailer solution.
- Stampie - A library for email services such as SendGrid, PostMark, MailGun and Mandrill.
- SwiftMailer - A mailer solution.
Files
Libraries for file manipulation and MIME type detection.
- Apache MIME Types - A library that parses Apache MIME types.
- Canal - A library to determine internet media types.
- CSV - A CSV data manipulation library.
- Ferret - A MIME detection library.
- Flysystem - Another filesystem abstraction layer.
- Gaufrette - A filesystem abstraction layer.
- Hoa Mime - Another MIME detection library.
- Lurker - A resource tracking library.
- PHP FFmpeg - A wrapper for the FFmpeg video library.
Streams
Libraries for working with streams.
- Streamer - A simple object-orientated stream wrapper library.
Dependency Injection
Libraries that implement the dependency injection design pattern.
- Acclimate - A common interface to dependency injection containers and service locators.
- Auryn - A recursive dependency injector.
- Container - Another flexible dependency injection container.
- PHP-DI - A dependency injection container that supports autowiring.
- Pimple - A tiny dependency injection container.
- Symfony DI - A dependency injection container component (SF2).
Imagery
Libraries for manipulating images.
- Color Extractor - A library for extracting colours from images.
- GIF Creator - A library to create GIF animations from multiple images.
- GIF Frame Extractor - A library to extract GIF animation frame information.
- Glide - An on-demand image manipulation library.
- Image Hash - A library for generating perceptual image hashes.
- Image Optimizer - A library for optimizing images.
- Image With Text - A library for embedding text into images.
- Imagine - An image manipulation library.
- Intervention Image - Another image manipulation library.
- PHP Image Workshop - Another image manipulation library.
Testing
Libraries for testing codebases and generating test data.
- Alice - An expressive fixture generation library.
- AspectMock - A mocking framework for PHPUnit/Codeception.
- Atoum - A simple testing library.
- Behat - A behaviour driven development (BDD) testing framework.
- Codeception - A full stack testing framework.
- DBUnit - A database testing library for PHPUnit.
- Faker - A fake data generator library.
- HTTP Mock - A library for mocking HTTP requests in unit tests.
- Kahlan - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.
- Mink - Web acceptance testing.
- Mockery - A mock object library for testing.
- ParaTest - A parallel testing library for PHPUnit.
- Peridot - An event driven test framework.
- Phake - Another mock object library for testing.
- Pho - Another behaviour driven development testing framework.
- PHPSpec - A design by specification unit testing library.
- PHPT - A test tool used by PHP itself.
- PHPUnit - A unit testing framework.
- Prophecy - A highly opinionated mocking framework.
- Samsui - Another fake data generator library.
- VFS Stream - A virtual filesystem stream wrapper for testing.
- VFS - Another virtual filesystem for testing.
Continuous Integration
Libraries and applications for continuous integration.
- GitlabCi - Let GitLab CI test, build, deploy your code. TravisCi like.
- Jenkins - A continous integration platform with PHP support.
- JoliCi - A continuous integration client written in PHP and powered by Docker.
- PHPCI - An open source continuous integration platform for PHP.
- SemaphoreCI - A continuous integration platform for open source and private projects.
- Shippable - A docker based continious integration platform for open source and private projects.
- Sismo - A continuous testing server library.
- Travis CI - A continuous integration platform.
- Wercker - A continuous integration platform
Documentation
Libraries for generating project documentation.
- APIGen - Another API documentation generator.
- daux.io - A documentation generator which uses Markdown files.
- PHP Documentor 2 - A documentation generator.
- phpDox - A documentation generator for PHP projects (that is not limited to API documentation).
- Sami - An API documentation generator.
Security
Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.
- Halite - A simple library for encryption using libsodium.
- HTML Purifier - A standards compliant HTML filter.
- IniScan - A tool that scans PHP INI files for security.
- Optimus - Id obfuscation based on Knuth's multiplicative hashing method.
- PHP Encryption - Secure PHP Encryption Library.
- PHP IDS - A structured PHP security layer.
- PHP SSH - An experimental object orientated SSH wrapper library.
- PHPSecLib - A pure PHP secure communications library.
- RandomLib - A library for generating random numbers and strings.
- SecurityMultiTool - A PHP security library.
- SensioLabs Security Check - A web tool to check your Composer dependencies for security advisories.
- TCrypto - A simple encrypted key-value storage library.
- True Random - A library that generates random numbers using www.random.org.
- VAddy - A continuous security testing platform for web applications.
- Zed - An integrated penetration testing tool for web applications.
Passwords
Libraries and tools for working with and storing passwords.
- GenPhrase - A library for generating secure random passphrases.
- Password Compat - A compatibility library for the new PHP 5.5 password functions.
- Password Policy - A password policy library for PHP and JavaScript.
- Password Validator - A library for validating and upgrading password hashes.
- Password-Generator - PHP library to generate random passwords.
- PHP Password Lib - A library for generating and validating passwords.
- phpass - A portable password hashing framework.
- Zxcvbn PHP - A realistic PHP password strength estimate library based on Zxcvbn JS.
Code Analysis
Libraries and tools for analysing, parsing and manipulating codebases.
- Athletic - An annotation based benchmark framework.
- Code Climate - An automated code review.
- Dissect - A set of tools for lexical and syntactical analysis.
- Exakat - A static analysis engine for PHP.
- GrumPHP - A composer plugin to defend code quality.
- Mondrian - A code analysis tool using Graph Theory.
- PHP Analyser - A library for analysing PHP code to find bugs and errors.
- PHP Code Sniffer - A library that detects PHP, CSS and JS coding standard violations.
- PHP CS Fixer - A coding standards fixer library.
- PHP Manipulator - A library for analysing and modifying PHP Source Code.
- PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
- PHP Metrics - A static metric library.
- PHP Parser - A PHP parser written in PHP.
- PHP Refactoring Browser - A command line utility for refactoring PHP code.
- PHP Semantic Versioning Checker - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
- PHPCheckstyle - A tool to help adhere to certain coding conventions.
- PHPCPD - A library that detects copied and pasted code.
- PhpDependencyAnalysis - A tool to create customisable dependency graphs.
- PHPLOC - A tool for quickly measuring the size of a PHP project.
- PHPQA - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
- PHPPHP - A PHP VM implementation in PHP.
- PHPSandbox - A PHP sandbox environment.
- Qafoo Quality Analyzer - A tool to visualize metrics and source code.
- Scrutinizer - A web tool to scrutinise PHP code.
- UBench - A simple micro benchmark library.
Architectural
Libraries related to design patterns, programming approaches and ways to organize code.
- Compose - A function composition library.
- Design Patterns PHP - A repository of software patterns implemented in PHP.
- Finite - A simple PHP finite state machine.
- Functional PHP - A functional programming library.
- Galapagos - Evolutionary language transformation.
- Iter - A library that provides iteration primitives using generators.
- Monad PHP - A simple Monad library.
- Patchwork - A library for redefining userland functions.
- PHP Option - An option type library.
- Pipeline - A pipeline pattern implementation.
- Ruler - A simple stateless production rules engine.
- RulerZ - A powerful rule engine and implementation of the Specification pattern.
Debugging and Profiling
Libraries and tools for debugging and profiling code.
- APM - Monitoring extension collecting errors and statistics into SQLite/MySQL/StatsD.
- Barbushin PHP Console - Another web debugging console using Google Chrome.
- Blackfire.io - A low-overhead code profiler.
- Kint - A debugging and profiling tool.
- PHP Console - A web debugging console.
- PHP Debug Bar - A debugging toolbar.
- PHPBench - A benchmarking Framework.
- PHPDBG - An interactive PHP debugger.
- Tideways.io - Monitoring and profiling tool
- Tracy - A simple error detection, logging and time measuring library.
- xDebug - A debug and profile tool for PHP.
- XHProf - A profiling tool originally developed by Facebook.
- Z-Ray - A debug and profile tool for Zend Server.
Build Tools
Project build and automation tools.
- Bob - A simple project automation tool.
- Box - A utility to build PHAR files.
- Phake - A rake PHP clone library.
- Phing - A PHP project build system inspired by Apache Ant.
Task Runners
Libraries for automating and running tasks.
- Bldr - A PHP Task runner built on Symfony components.
- Jobby - A PHP cron job manager without modifying crontab.
- Robo - A PHP Task runner with object-orientated configurations.
- Task - A pure PHP task runner inspired by Grunt and Gulp.
Navigation
Tools for building navigation structures.
- Cartographer - A sitemap generation library.
- KnpMenu - A menu library.
Asset Management
Tools for managing, compressing and minifying website assets.
- Assetic - An asset manager pipeline library.
- JShrink - A JavaScript minifier library.
- Munee - An asset optimiser library.
- Pipe - Another asset manager pipeline library.
- Puli - A library for determining assets absolute paths.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- GeoCoder - A geocoding library.
- GeoJSON - A GeoJSON implementation.
- GeoTools - A library of geo-related tools.
- PHPGeo - A simple geo library.
Date and Time
Libraries for working with dates and times.
- CalendR - A calendar management library.
- Carbon - A simple DateTime API extension.
- ExpressiveDate - Another DateTime API extension.
- Moment.php - Moment.js inspired PHP DateTime handler with i18n support.
Event
Libraries that are event-driven or implement non-blocking event loops.
- Amp - An event driven non-blocking I/O library.
- Broadway - An event source and CQRS library.
- Cake Event - An event dispatcher library (CP).
- Elephant.io - Yet another web socket library.
- Evenement - An event dispatcher library.
- Event - An event library with a focus on domain events.
- Hoa EventSource - An event source library.
- Hoa WebSocket - Another web socket library.
- Icicle - An asynchronous library with coroutines, non-blocking I/O, and multithreading.
- Prooph Event Store - An event source component to persist event messages
- Ratchet - A web socket library.
- React - An event driven non-blocking I/O library.
- Rx.PHP - A reactive extension library.
- Workerman - An event driven non-blocking I/O library.
Logging
Libraries for generating and working with log files.
- Analog - A closure-based micro logging package.
- KLogger - An easy-to-use PSR-3 compliant logging class.
- Monolog - A comprehensive logger.
E-commerce
Libraries and applications for taking payments and building online e-commerce stores.
- Money - A PHP implementation of Fowler's money pattern.
- OmniPay - A framework agnostic multi-gateway payment processing library.
- Payum - A payment abstraction library.
- Sebastian Money - Another library for working with monetary values.
- Shopware - Highly customizable e-commerce software
- Swap - An exchange rates library.
- Sylius - An open source e-commerce solution.
Libraries and software for working with PDF files.
- Dompdf - A HTML to PDF converter.
- PHPPdf - A library for generating PDFs and images from XML.
- Snappy - A PDF and image generation library.
- WKHTMLToPDF - A tool to convert HTML to PDF.
Office
Libraries for working with office suite documents.
- ExcelAnt - A library for manipulating Microsoft Excel documents.
- PHPExcel - A library for working with Microsoft Excel documents.
- PHPPowerPoint - A library for working with Microsoft PowerPoint Presentations.
- PHPWord - A library for working with Microsoft Word documents.
Database
Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.
- Baum - A nested set implementation for Eloquent.
- Cake ORM - Object-Relational Mapper, implemented using the DataMapper pattern (CP).
- Doctrine Extensions - A collection of Doctrine behavioural extensions.
- Doctrine - A comprehensive DBAL and ORM.
- Eloquent - A simple ORM (L5).
- LazyRecord - A fast ORM designed for simplicity, extendability and performance.
- Pomm - An Object Model Manager for PostgreSQL.
- Propel - A fast ORM, migration library and query builder.
- ProxyManager - A set of utilities to generate proxy objects for data mappers.
- RedBean - A lightweight, configuration-less ORM.
- Spot2 - A MySQL datamapper ORM.
Migrations
Libraries to help manage database schemas and migrations.
- Antidote - CLI tool to handle database migrations. Can have branches and works with MySQL/MariaDB/Percona/PostgreSQL/Sqlite3.
- Doctrine Migrations - A migration library for Doctrine.
- Migrations - A migration management library.
- Phinx - Another database migration library.
- PHPMig - Another migration management library.
- Ruckusing - Database migrations for PHP ala ActiveRecord Migrations with support for MySQL, Postgres, SQLite.
NoSQL
Libraries for working with "NoSQL" backends.
- Monga - A MongoDB abstraction library.
- MongoQB - A MongoDB query builder library.
- PHPMongo - A MongoDB ORM.
- Predis - A feature complete Redis library.
Queue
Libraries for working with event and task queues.
- Bernard - A multibackend abstraction library.
- BunnyPHP - A performant pure-PHP AMQP (RabbitMQ) sync and also async (ReactPHP) library.
- Pheanstalk - A Beanstalkd client library.
- PHP AMQP - A pure PHP AMQP library.
- Tarantool Queue - PHP bindings for Tarantool Queue.
- Thumper - A RabbitMQ pattern library.
Search
Libraries and software for indexing and performing search queries on data.
- Elastica - A client library for ElasticSearch.
- ElasticSearch PHP - The official client library for ElasticSearch.
- Solarium - A client library for Solr.
- Sphinx Search - Sphinx Search library provides SphinxQL indexing and searching features
- SphinxQL query builder - A query library for the Sphinx search engine.
Command Line
Libraries related to the command line.
- Boris - A tiny PHP REPL.
- Cilex - A micro framework for building command line tools.
- CLI Menu - A library for building CLI menus.
- CLIFramework - A command-line framework supports zsh/bash completion generation, subcommands and option constraints. It also powers phpbrew.
- CLImate - A library for outputting colours and special formatting.
- Commando - Another simple command line opt parser.
- Cron Expression - A library to calculate cron run dates.
- GetOpt - A command line opt parser.
- GetOptionKit - Another command line opt parser.
- Hoa Console - Another command line library.
- OptParse - Another command line opt parser.
- Pecan - An event-driven, non-blocking shell.
- PsySH - Another PHP REPL.
- ShellWrap - A simple command line wrapper library.
- Shunt - A library for running commands in parallel on multiple remote machines.
Authentication and Authorization
Libraries for implementing user authentication and authorization.
- Hawk - A Hawk HTTP authentication library.
- HybridAuth - An open source social sign on library.
- Json Web Token - Json Tokens to authenticate and transmit information.
- Lock - A library for implementing Access Control Lists (ACL) systems.
- OAuth 1.0 Client - An OAuth 1.0 client library.
- OAuth 2.0 Client - An OAuth 2.0 client library.
- OAuth2 Server - Another OAuth2 server implementation.
- OAuth2 Server - An OAuth2 authentication server, resource server and client library.
- Opauth - A multi-provider authentication framework.
- PHP oAuthLib - Another OAuth library.
- Sentinel Social - A library for social network authentication.
- Sentinel - A framework agnostic authentication & authorisation library.
- TwitterOAuth - A Twitter OAuth library.
- TwitterSDK - A fully tested Twitter SDK.
Markup
Libraries for working with markup.
- Cebe Markdown - An fast and extensible Markdown parser.
- Ciconia - Another Markdown parser that supports Github flavoured Markdown.
- CommonMark PHP - A Markdown parser which supports the full CommonMark spec.
- Decoda - A lightweight markup parser library.
- Emoji - A library that converts unicode characters and names into emoji images.
- HTML to Markdown - Converts HTML into Markdown.
- HTML5 PHP - An HTML5 parser and serializer library.
- Parsedown - Another Markdown parser.
- PHP Markdown - A Markdown parser.
Strings
Libraries for parsing and manipulating strings.
- Agent - A PHP desktop/mobile user agent parser, based on Mobiledetect.
- ANSI to HTML5 - An ANSI to HTML5 converter library.
- Color Jizz - A library for manipulating and converting colours.
- Device Detector - Another library for parsing user agent strings.
- Hoa String - Another UTF-8 string library.
- Jieba-PHP - A PHP port of Python's jieba. Chinese text segmentation for natural language processing.
- Mobile-Detect - A lightweight PHP class for detecting mobile devices (including tablets).
- Patchwork UTF-8 - A portable library for working with UTF-8 strings.
- Slugify - A library to convert strings to slugs.
- SQL Formatter - A library for formatting SQL statements.
- Stringy - A string manipulation library with multibyte support.
- Text - A text manipulation library.
- UA Parser - A library for parsing user agent strings.
- URLify - A PHP port of Django's URLify.js.
- UUID - A library for generating UUIDs.
Numbers
Libraries for working with numbers.
- ByteUnits - A library to parse, format and convert byte units in binary and metric systems.
- LibPhoneNumber for PHP - A PHP implementation of Google's phone number handling library.
- Math - A library for working with large numbers.
- Numbers PHP - A library for working with numbers.
- PHP Conversion - Another library for converting between units of measure.
- PHP Units of Measure - A library for converting between units of measure.
Filtering and Validation
Libraries for filtering and validating data.
- Cake Validation - Another validation library (CP).
- DMS Filter - An annotation filtering library.
- Filterus - A simple PHP filtering library.
- ISO-codes - A library for validating inputs according standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries
- MetaYaml - A schema validation library that supports YAML, JSON and XML.
- Respect Validation - A simple validation library.
- Upload - A library for handling file uploads and validation.
- Valitron - Another validation library.
- Volan - Another simplified validation library.
API
Libraries and web tools for developing APIs.
- API Platform - Expose in minutes an hypermedia REST API that embraces JSON-LD, Hydra format.
- Apigility - An API builder built with Zend Framework 2.
- Drest - A library for exposing Doctrine entities as REST resource endpoints.
- HAL - A Hypertext Application Language (HAL) builder library.
- Hateoas - A HATEOAS REST web service library.
- Negotiation - A content negotiation library.
- Restler - A lightweight framework to expose PHP methods as RESTful web API.
- wsdl2phpgenerator - A tool to generate PHP classes from SOAP WSDL files.
Caching
Libraries for caching data.
- Alternative PHP Cache (APC) - Open opcode cache for PHP.
- APIx Cache - A thin PSR-6 cache wrapper to various caching backends emphasising cache tagging and indexing.
- CacheTool - A tool to clear APC/opcode caches from the command line.
- Cake Cache - A caching library (CP).
- Doctrine Cache - A caching library.
- Stash - Another library for caching.
- Zend Cache - Another caching library (ZF2).
Data Structure and Storage
Libraries that implement data structure or storage techniques.
- Ardent - A library of data structures.
- Cake Collection - A simple collections library (CP).
- Collections - Collections Abstraction library for PHP.
- Fractal - A library for converting complex data structures to JSON output.
- Ginq - Another PHP library based on .NET's LINQ.
- JsonMapper - A library that maps nested JSON structures onto PHP classes.
- Knapsack - Collection library inspired by Clojure's sequences.
- PHP Collections - A simple collections library.
- PINQ - A PHP library based on .NET's LINQ (Language Integrated Query).
- Serializer - A library for serialising and de-serialising data.
- Totem - A library to manage and create data changesets.
- YaLinqo - Yet Another LINQ to Objects for PHP.
- Zend Serializer - Another library for serialising and de-serialising data (ZF2).
Notifications
Libraries for working with notification software.
- JoliNotif - A cross-platform library for desktop notification (support for Growl, notify-send, toaster, etc)
- Nod - A notification library (e.g., Growl).
- Notification Pusher - A standalone library for device push notifications.
- Notificato - A library for handling push notifications.
- Notificator - A lightweight notification library.
- Php-pushwoosh - A PHP Library to easily send push notifications with the Pushwoosh REST Web Services.
Deployment
Libraries for project deployment.
- Deployer - A deployment tool.
- Envoy - A tool to run SSH tasks with PHP.
- Plum - A deployer library.
- Pomander - A deployment tool for PHP applications.
- Rocketeer - A fast and easy deployer for the PHP world.
Internationalisation and Localisation
Libraries for Internationalization (I18n) and Localization (L10n).
Third Party APIs
Libraries for accessing third party APIs.
- Amazon Web Service SDK - The official PHP AWS SDK library.
- Campaign Monitor - The official Campaign Monitor PHP library.
- Digital Ocean - A library to interface with the Digital Ocean API.
- Dropbox SDK - The official PHP Dropbox SDK library.
- Github - A library to interface with the Github API.
- Mailgun The official Mailgun PHP API.
- PHP Github API - Another library to interface with the Github API.
- S3 Stream Wrapper - A stream wrapper library for Amazon S3.
- Stripe - The official Stripe PHP library.
- Twilio - The official Twilio PHP REST API.
- Twitter OAuth - A library to interface with Twitter's OAuth workflow.
- Twitter REST - A library to interact with Twitter's REST API.
Extensions
Libraries to help build PHP extensions.
- PHP CPP - A C++ library for developing PHP extensions.
- Zephir - A compiled language between PHP and C++ for developing PHP extensions.
Miscellaneous
Useful libraries or tools that don't fit in the categories above.
- Annotations - An annotations library (part of Doctrine).
- Cake Utility - Utility classes such as Inflector, String, Hash, Security and Xml (CP).
- Chief - A command bus library.
- ClassPreloader - A library for optimising autoloading.
- Country List - A list of all countries with names and ISO 3166-1 codes.
- Embera - An Oembed consumer library.
- Essence - A library for extracting web media.
- Flux - A regular expression building library.
- Graphviz - A Graphviz library.
- Hprose-PHP - A very newbility RPC Library, support 25+ languages now.
- JSON Lint - A JSON lint utility.
- JSONPCallbackValidator - A library for validating JSONP callbacks.
- Jumper - A remote service executor library.
- LadyBug - A dumper library.
- Lambda PHP - A Lambda calculus interpreter in PHP.
- LiteCQRS - A CQRS (Command Query Responsibility Separation) library.
- Metrics - A simple metrics API library.
- noCAPTCHA - Helper for Google's noCAPTCHA (reCAPTCHA).
- Nmap - A PHP wrapper around Nmap.
- Opengraph - An opengraph library.
- Pagerfanta - A pagination library.
- PHP Expression - A PHP expression language.
- PHP PassBook - A PHP library for iOS PassBook.
- PHP-GPIO - A library for playing with the Raspberry PI's GPIO pins.
- PHPCR - A PHP port of the Java Content Repository (JCR).
- PHPStack - A TCP/IP stack proof of concept written in PHP.
- print_o - An object graph visualizer.
- Procrastinator - A library for running time consuming tasks.
- Prooph Service Bus - Lightweight message bus supporting CQRS and Micro Services
- RMT - A library for versioning and releasing software.
- sabre/vobject - A library for parsing VCard and iCalendar objects.
- Slimdump - An easy dumper tool for MySQL.
- Spork - A process forking library.
- Sslurp - A library that makes dealing with SSL suck less.
- SuperClosure - A library that allows Closures to be serialized.
- Symfony VarDumper - A variable dumper component (SF2).
- Underscore - A PHP port of the Underscore JS library.
- Whoops - A pretty error handling library.
Software
Software for creating a development environment.
PHP Installation
Tools to help install and manage PHP on your computer.
- HomeBrew PHP - A PHP tap for HomeBrew.
- HomeBrew - A package manager for OSX.
- PHP Brew - A PHP version manager and installer.
- PHP Build - Another PHP version installer.
- PHP Env - Another PHP version manager.
- PHP OSX - A PHP installer for OSX.
- PHP Switch - Another version manager.
- VirtPHP - A tool for creating and managing isolated PHP environments.
Development Environment
Software and tools for creating a sandboxed development environment.
- Ansible - A radically simple orchestration framework.
- Phansible - A web tool for building PHP development virtual machines with Ansible.
- Protobox - Another web tool for building PHP development virtual machines.
- PuPHPet - A web tool for building PHP development virtual machines.
- Puppet - A server automation framework and application.
- Vagrant - A portable development environment utility.
Virtual Machines
Alternative PHP virtual machines.
- Hack - A programming language for HHVM that interoperates seamlessly with PHP.
- HHVM - A Virtual Machine, Runtime and JIT for PHP by Facebook.
- HippyVM - Another PHP virtual machine.
Integrated Development Environment
Integrated Development Environments with support for PHP.
- Eclipse for PHP Developers - A PHP IDE based on the Eclipse platform.
- Netbeans - An IDE with support for PHP and HTML5.
- PhpStorm - A commercial PHP IDE.
Web Applications
Web-based applications and tools.
- 3V4L - An online PHP & HHVM shell.
- DBV - A database version control application.
- PHP Queue - An application for managing queueing backends.
- MailCatcher - A web tool for capturing and viewing emails.
- Cachet - The open source status page system.
- phpRedisAdmin - A simple web interface to manage Redis databases.
- phpPgAdmin - A web-based administration tool for PostgreSQL.
- phpMyAdmin - A web interface for MySQL/MariaDB.
- Adminer - Database management in a single PHP file.
- Grav - A modern flat-file CMS.
Infrastructure
Infrastructure for providing PHP applications and services.
- appserver.io - A multithreaded application server for PHP, written in PHP.
- php-pm - A process manager, supercharger and load balancer for PHP applications.
Resources
Various resources, such as books, websites and articles, for improving your PHP development skills and knowledge.
PHP Websites
Useful PHP-related websites.
- Nomad PHP - A online PHP learning resource.
- PHP Best Practices - A PHP best practice guide.
- PHP FIG - The PHP Framework Interoperability Group.
- PHP Mentoring - Peer to peer PHP mentorship organization.
- PHP School - Open Source Learning for PHP.
- PHP Security - A guide to PHP security.
- PHP The Right Way - A PHP best practice quick reference guide.
- PHP UG - A website to help people locate their nearest PHP user group (UG).
- PHP Versions - Lists which versions of PHP are available on several popular web hosts.
- PHP Weekly - A weekly PHP newsletter.
- PHPTrends - An overview of fastest growing PHP libraries.
- Securing PHP - A newsletter about PHP security and library recommendations.
- Seven PHP - A website that interviews members of the PHP community.
Other Websites
Useful websites related to web development.
- Atlassian Git Tutorials - A series of Git tutorials.
- Hg Init - A series of Mercurial tutorials.
- Semantic Versioning - A website explaining semantic versioning.
- Servers for Hackers - A newsletter about server management.
- The Open Web Application Security Project (OWASP) - An open software security community.
- WebSec IO - A web security community resource.
PHP Books
Fantastic PHP-related books.
- Functional Programming in PHP - This book will show you how to leverage these new PHP5.3+ features by understanding functional programming principles
- Grumpy PHPUnit - A book about unit testing with PHPUnit by Chris Hartjes.
- Mastering Object-Orientated PHP - A book about object-orientated PHP by Brandon Savage.
- Modern PHP New Features and Good Practices - A book about new PHP features and best practices by Josh Lockhart.
- Modernising Legacy Applications in PHP - A book about modernising legacy PHP applications by Paul M. Jones.
- PHP 7 Upgrade Guide - An ebook covering all of the features and changes in PHP 7 by Colin O'Dell.
- PHP Pandas - A book about learning to write PHP by Dayle Rees.
- Scaling PHP Applications - An ebook about scaling PHP applications by Steve Corona.
- Securing PHP: Core Concepts - A book about common security terms and practices for PHP by Chris Cornutt.
- Signaling PHP - A book about catching PCNTL signals in CLI scripts by Cal Evans.
- The Grumpy Programmer's Guide to Building Testable PHP Applications - A book about building testing PHP applications by Chris Hartjes.
- XML Parsing with PHP - This book covers parsing and validating XML documents, leveraging XPath expressions, and working with namespaces as well as how to create and modify XML files programmatically.
Other Books
Books related to general computing and web development.
- Elasticsearch: The Definitive Guide - A guide to working with Elasticsearch by Clinton Gormley and Zachary Tong.
- Eloquent JavaScript - A book about JavaScript programming by Marijn Haverbeke.
- Head First Design Patterns - A book that expains software design patterns.
- Pro Git - A book about Git by Scott Chacon and Ben Straub.
- The Linux Command Line - A book about the Linux command line by William Shotts.
- The Tangled Web — Securing Web Applications - A book about securing web applications by Michal Zalewski.
- Understanding Computation - A book about computation theory by Tom Stuart.
- Vagrant Cookbook - A book about creating Vagrant environments by Erika Heidi.
PHP Videos
Fantastic PHP-related videos.
- PHP Town Hall - A casual PHP podcast by Ben Edmunds and Phil Sturgeon.
- PHP UK Conference - A collection of videos from the PHP UK Conference.
- Programming with Anthony - A video series by Anthony Ferrara.
- Taking PHP Seriously - A talk outlining PHP's strengths by Keith Adams of Facebook.
PHP Reading
PHP-releated reading materials.
- Composer Primer - A Composer primer.
- Composer Stability Flags - An article about Composer stability flags.
- Composer Versioning - An article about Composer versioning.
- Create Your Own PHP Framework - A series of articles on how to make your own PHP framework by Fabien Potencier.
- Don't Worry About BREACH - An article about the BREACH hack and CSRF tokens.
- On PHP 5.3, Lambda Functions and Closures - An article about lambda functions and closures.
- PHP Is Much Better Than You Think - An article about the PHP language and ecosystem.
- PHP Package Checklist - A checklist for successful PHP package development.
- PHP Sucks! But I Like It! - An article about the pros and cons of PHP.
- Preventing CSRF Attacks - An article on preventing CSRF attacks.
- Seven Ways to Screw Up BCrypt - An article about correct BCrypt implementation.
- Use Env - An article about using the unix environment helper.
PHP Internals Reading
Reading materials related to the PHP internals or performance.
- Disproving the Single Quotes Myth - An article about performance of single and double quoted strings.
- How Big Are PHP Arrays (And Values) Really? - An article about array internals.
- How Foreach Works - A detailed StackOverflow answer about foreach.
- How Long is a Piece of String - An article about string internals.
- PHP Evaluation Order - An article about evaluation order in PHP.
- PHP Internals Book - An online book about PHP internals, written by three core developers.
- PHP RFCs - The home of PHP RFCs (Request for Comments).
- Print vs Echo, Which One is Faster? - An article about print and echo performance.
- The PHP Ternary Operator. Fast or Not? - An article ternary performance.
- Understanding OpCodes - An article about opcodes.
- When Does Foreach Copy? - An article about the internals of foreach.
- Why Objects (Usually) Use Less Memory Than Arrays - An article about object and array internals.
- You're Being Lied To - An article about internal ZVALs.
- Collecting Garbage: 1 2 3 - A series about the PHP garbage collection internals.
- PHP Source Code for Developers: 1 2 3 4 - A series about the PHP source code.
PHP Magazines
Fantastic PHP-related magazines.
- php[architect] - A monthly magazine dedicated to PHP.