Ranked awesome lists, all in one place
This list is a copy of ziadoz/awesome-php with ranks
Awesome PHP
A curated list of amazingly awesome PHP libraries, resources and shiny things.
Contributing and Collaborating
Please see CONTRIBUTING, CODE-OF-CONDUCT and COLLABORATING for details.
Table of Contents
- Awesome PHP
- Composer Repositories
- 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
- Code Quality
- Static 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
Composer Repositories
Composer Repositories.
- Firegento - Magento Module Composer Repository.
- Packagist - The PHP Package Repository.
- Private Packagist - Composer package archive as a service for PHP.
- WordPress Packagist - Manage your plugins with Composer.
- Zend Framework Packages - Zend Framework Composer Repository.
Dependency Management
Libraries for dependency and package management.
- Composer Installers ★918 - A multi framework Composer library installer.
- Composer - A package and dependency manager.
- Melody - A tool to build one file Composer scripts.
- Pickle ★1066 - A PHP extension installer.
Dependency Management Extras
Extras related to dependency management.
- Composed ★31 ⏳1Y - A library to parse your project’s Composer environment at runtime.
- Composer Merge Plugin ★424 - A composer plugin to merge several composer.json files.
- Prestissimo ★3719 - A composer plugin which enables parallel install process.
- Satis ★1752 - A static Composer repository generator.
- tooly ★75 - A library to manage PHAR files in project using Composer.
- Toran Proxy - A static Composer repository and proxy.
Frameworks
Web development frameworks.
- Aura Framework - A framework built from 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 - A framework comprised of individual components (SF).
- Yii2 ★12032 - Another PHP framework.
- Zend Framework 2 - Another framework comprised of individual components (ZF2).
- Ice - Another simple and fast PHP framework delivered as C-extension.
Framework Extras
Extras related to web development frameworks.
- CakePHP CRUD ★301 - A Rapid Application Development (RAD) plugin for CakePHP.
- Knp RAD Components - A set of Rapid Application Development (RAD) components for Symfony.
- Symfony CMF ★746 - A Content Management Framework to create custom CMS.
Components
Standalone components from web development frameworks and development groups.
- Aura - Independent components, fully decoupled from each other and from any framework.
- CakePHP Plugins - A directory of CakePHP plugins.
- Hoa Project - Another package of PHP components.
- League of Extraordinary Packages - A PHP package development group.
- Symfony Components - The components that make Symfony.
- 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.
- Radar ★43 - An Action-Domain-Responder implementation for PHP.
- Slim - Another simple micro framework.
Micro Framework Extras
Extras related to micro frameworks and routers.
- Silex Skeleton ★826 - A project skeleton for Silex.
- Silex Web Profiler ★204 - A web debug toolbar for Silex.
- Slim Skeleton ★841 - A skeleton for Slim.
- Slim Twig View ★313 ⏳2Y - Integrate Twig into Slim.
- Slim PHP View ★118 - A simple PHP renderer for Slim.
Routers
Libraries for handling application routing.
- Aura.Router ★371 - A full-featured routing library.
- Fast Route ★2965 - A fast routing library.
- Klein ★2297 - A flexible router.
- Pux ★1238 ⏳1Y - Another fast routing library.
- Route ★328 - A routing library built on top of Fast Route.
Templating
Libraries and tools for templating and lexing.
- Aura.View ★65 - Provides TemplateView and TwoStepView using PHP as the tempting language, with support for partials, sections, and helpers.
- Foil ★157 - Another native PHP templating library.
- MtHaml ★342 - A PHP implementation of the HAML template language.
- Mustache ★2674 - A 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 ★87 ⏳1Y - 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.
- 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 ★1483 - Another HTTP client.
- Guzzle - A comprehensive HTTP client.
- HTTPFul ★1498 - A chainable HTTP client.
- HTTPlug - An HTTP client abstraction without binding to a specific implementation.
- PHP VCR - A library for recording and replaying HTTP requests.
- Requests ★2937 - A simple HTTP library.
- Retrofit ★115 - A library to ease creation of REST API clients.
- zend-diactoros ★840 - PSR-7 HTTP Message implementation.
Scraping
Libraries for scraping websites.
- Embed ★1216 - An information extractor from any web service or page.
- Goutte ★6424 - A simple web scraper.
- PHP Spider ★1000 - A configurable and extensible PHP web spider.
Middlewares
Libraries for building application using middlewares.
- Expressive - PSR-7 Middleware framework from Zend.
- PSR7-Middlewares ★655 - Inspiring collection of handy middlewares.
- Relay ★212 - A PHP 5.5 PSR-7 middleware dispatcher.
- Stack - A library of stackable middleware for Silex/Symfony.
- zend-stratigility ★217 - Middleware for PHP built on top of PSR-7.
URL
Libraries for parsing URLs.
- PHP Domain Parser ★536 - A domain suffix parser library.
- Purl ★754 - A URL manipulation library.
- sabre/uri ★169 - A functional URI manipulation library.
- Uri ★323 - Another URL manipulation library.
Libraries for sending and parsing email.
- CssToInlineStyles ★3415 - A library to inline CSS in email templates.
- Email Reply Parser ★474 - An email reply parser library.
- Email Validator ★96 ⏳1Y - A small email address validation library.
- Fetch ★458 - An IMAP library.
- Mautic ★2437 - Email marketing automation
- PHPMailer ★11211 - Another mailer solution.
- Stampie ★250 - 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.
- CSV ★1598 - A CSV data manipulation library.
- Flysystem ★6549 - Another filesystem abstraction layer.
- Gaufrette ★1983 - A filesystem abstraction layer.
- Hoa Mime ★84 - Another MIME detection library.
- PHP FFmpeg ★2188 - A wrapper for the FFmpeg video library.
- UnifiedArchive ★176 - A unified reader and writer of compressed archives.
Streams
Libraries for working with streams.
- Streamer ★245 ⏳1Y - A simple object-orientated stream wrapper library.
Dependency Injection
Libraries that implement the dependency injection design pattern.
- Aura.Di ★273 - A serializable dependency injection container with constructor and setter injection, interface and trait awareness, configuration inheritance, and much more.
- Acclimate ★197 - A common interface to dependency injection containers and service locators.
- Auryn ★563 - A recursive dependency injector.
- Container ★393 - Another flexible dependency injection container.
- Disco ★116 - A PSR-11 compatible, annotation-based dependency injection container.
- PHP-DI - A dependency injection container that supports autowiring.
- Pimple - A tiny dependency injection container.
- Symfony DI ★1038 - A dependency injection container component (SF).
Imagery
Libraries for manipulating images.
- Color Extractor ★852 ⏳1Y - A library for extracting colours from images.
- Glide ★1383 - An on-demand image manipulation library.
- Image Hash ★1102 - A library for generating perceptual image hashes.
- Image Optimizer ★526 - A library for optimizing images.
- Imagine - An image manipulation library.
- Intervention Image ★7278 - Another image manipulation library.
- PHP Image Workshop ★792 - Another image manipulation library.
Testing
Libraries for testing codebases and generating test data.
- Alice ★1633 - An expressive fixture generation library.
- AspectMock ★630 - A mocking framework for PHPUnit/Codeception.
- Atoum ★1231 - A simple testing library.
- Behat - A behaviour driven development (BDD) testing framework.
- Codeception ★3338 - A full stack testing framework.
- DBUnit ★193 - A database testing library for PHPUnit.
- Faker ★16040 - A fake data generator library.
- HTTP Mock ★320 - A library for mocking HTTP requests in unit tests.
- Kahlan ★872 - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.
- Mink - Web acceptance testing.
- Mockery ★5274 - A mock object library for testing.
- ParaTest ★682 - A parallel testing library for PHPUnit.
- Peridot ★288 - An event driven test framework.
- Phake ★424 - Another mock object library for testing.
- Pho ★278 ⏳1Y - Another behaviour driven development testing framework.
- PHP-Mock ★193 - A mock library for built-in PHP functions (e.g. time()).
- PHPSpec ★1406 - A design by specification unit testing library.
- PHPT - A test tool used by PHP itself.
- PHPUnit ★10263 - A unit testing framework.
- Prophecy ★3967 - A highly opinionated mocking framework.
- VFS Stream ★995 - A virtual filesystem stream wrapper for testing.
Continuous Integration
Libraries and applications for continuous integration.
- CircleCI - A continuous integration platform.
- GitlabCi - Let GitLab CI test, build, deploy your code. TravisCi like.
- Jenkins - A continous integration platform with PHP support.
- JoliCi ★669 ⏳1Y - 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.
- Travis CI - A continuous integration platform.
- Wercker - A continuous integration platform.
Documentation
Libraries for generating project documentation.
- APIGen ★1749 - Another API documentation generator.
- daux.io ★4685 - A documentation generator which uses Markdown files.
- PHP Documentor 2 ★2161 - A documentation generator.
- phpDox - A documentation generator for PHP projects (that is not limited to API documentation).
- Sami ★1849 - 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 ★5760.
- HTML Purifier ★1264 - A standards compliant HTML filter.
- IniScan ★1306 - A tool that scans PHP INI files for security.
- Optimus ★801 - Id obfuscation based on Knuth’s multiplicative hashing method.
- PHP Encryption ★1852 - Secure PHP Encryption Library.
- PHP SSH ★308 - An experimental object orientated SSH wrapper library.
- PHPSecLib - A pure PHP secure communications library.
- random_compat ★3669 - PHP 5.x support for
random_bytes()
andrandom_int()
- RandomLib ★698 - A library for generating random numbers and strings.
- SensioLabs Security Check - A web tool to check your Composer dependencies for security advisories.
- TCrypto ★51 ⏳1Y - A simple encrypted key-value storage library.
- 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 ★69 - A library for generating secure random passphrases.
- Password Compat ★2016 - A compatibility library for the new PHP 5.5 password functions.
- Password Policy ★64 ⏳1Y - A password policy library for PHP and JavaScript.
- Password Validator ★142 - A library for validating and upgrading password hashes.
- Password-Generator ★116 - PHP library to generate random passwords.
- PHP Password Lib ★371 - A library for generating and validating passwords.
- phpass - A portable password hashing framework.
- Zxcvbn PHP ★439 - A realistic PHP password strength estimate library based on Zxcvbn JS.
Code Analysis
Libraries and tools for analysing, parsing and manipulating codebases.
- Better Reflection ★553 - AST-based reflection library that allows analysis and manipulation of code
- Code Climate - An automated code review.
- PHP Parser ★6597 - A PHP parser written in PHP.
- PHP Semantic Versioning Checker ★386 - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
- PHPLOC ★1496 - A tool for quickly measuring the size of a PHP project.
- PHPQA ★252 - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
- Qafoo Quality Analyzer ★433 - A tool to visualize metrics and source code.
- Scrutinizer - A web tool to scrutinise PHP code ★446 ⏳2Y.
- UBench ★461 - A simple micro benchmark library.
Code Quality
Libraries for managing code quality, formatting and linting.
- PHP CodeSniffer ★4975 - A library that detects PHP, CSS and JS coding standard violations.
- PHP CS Fixer ★6047 - A coding standards fixer library.
- PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
- PHPCheckstyle ★119 - A tool to help adhere to certain coding conventions.
- PHPCPD ★1505 - A library that detects copied and pasted code.
Static Analysis
Libraries for performing static analysis of PHP code.
- Exakat ★156 - A static analysis engine for PHP.
- Mondrian ★348 ⏳2Y - A code analysis tool using Graph Theory.
- phan ★3208 - A static analyzer based on PHP 7+ and the php-ast extension.
- PHPCompatibility ★839 - A PHP compatibility checker for PHP CodeSniffer.
- PhpDependencyAnalysis ★321 - A tool to create customisable dependency graphs.
- PHP Metrics ★1506 - A static metric library.
- PHP Migration ★134 - A static analyzer for PHP version migration.
- PHPStan ★3832 - A PHP Static Analysis Tool.
- Psalm ★947 - A static analysis tool for finding errors in PHP applications.
Architectural
Libraries related to design patterns, programming approaches and ways to organize code.
- Design Patterns PHP ★15155 - A repository of software patterns implemented in PHP.
- Finite - A simple PHP finite state machine.
- Functional PHP ★1231 - A functional programming library.
- Iter ★724 - A library that provides iteration primitives using generators.
- Patchwork - A library for redefining userland functions.
- Pipeline ★509 - A pipeline pattern implementation.
- RulerZ ★623 - 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 ★1118 - Another web debugging console using Google Chrome.
- Blackfire.io - A low-overhead code profiler.
- Kint ★2106 - A debugging and profiling tool.
- PHP Console ★455 - A web debugging console.
- PHP Debug Bar - A debugging toolbar.
- PHPBench ★711 - A benchmarking Framework.
- Tideways.io - Monitoring and profiling tool
- Tracy ★927 - A simple error detection, logging and time measuring library.
- xDebug ★1414 - A debug and profile tool for PHP.
- XHProf ★2146 - A profiling tool originally developed by Facebook.
- Z-Ray - A debug and profile tool for Zend Server.
Build Tools
Project build and automation tools.
- Box ★1123 - A utility to build PHAR files.
- Construct ★248 - A PHP project/micro-package generator.
- 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 ★740 - A PHP cron job manager without modifying crontab.
- Robo ★2051 - 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.
- KnpMenu ★682 - A menu library.
Asset Management
Tools for managing, compressing and minifying website assets.
- JShrink ★531 - A JavaScript minifier library.
- Munee ★873 ⏳1Y - An asset optimiser library.
- Puli ★438 ⏳1Y - A library for determining assets absolute paths.
- BowerPHP ★480 - A PHP implementation of Bower. A package manager for the web
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- GeoCoder - A geocoding library.
- GeoJSON ★153 ⏳1Y - A GeoJSON implementation.
- GeoTools ★914 - A library of geo-related tools.
- PHPGeo ★973 - A simple geo library.
Date and Time
Libraries for working with dates and times.
- CalendR - A calendar management library.
- Carbon ★9320 - A simple DateTime API extension.
- Chronos ★599 - A DateTime API extension supporting both mutable and immutable date/time.
- Moment.php ★698 - Moment.js inspired PHP DateTime handler with i18n support.
- Yasumi ★450 - An library to help you calculate the dates and names of holidays.
Event
Libraries that are event-driven or implement non-blocking event loops.
- Amp ★1493 - An event driven non-blocking I/O library.
- Broadway ★1093 - An event source and CQRS library.
- Cake Event ★11 - An event dispatcher library (CP).
- Elephant.io ★998 - Yet another web socket library.
- Evenement ★704 - An event dispatcher library.
- Event ★561 ⏳1Y - An event library with a focus on domain events.
- Hoa EventSource ★75 ⏳1Y - An event source library.
- Hoa WebSocket ★405 - Another web socket library.
- Prooph Event Store ★335 - An event source component to persist event messages
- Ratchet ★4193 - A web socket library.
- React ★6133 - An event driven non-blocking I/O library.
- RxPHP ★1075 - A reactive extension library.
- Workerman ★6323 - An event driven non-blocking I/O library.
Logging
Libraries for generating and working with log files.
- Monolog ★10529 - A comprehensive logger.
E-commerce
Libraries and applications for taking payments and building online e-commerce stores.
- Money ★1950 - A PHP implementation of Fowler’s money pattern.
- OmniPay ★4133 - A framework agnostic multi-gateway payment processing library.
- Payum ★1210 - A payment abstraction library.
- Shopware ★862 - Highly customizable e-commerce software
- Swap ★926 - An exchange rates library.
- Sylius - An open source e-commerce solution.
Libraries and software for working with PDF files.
- Dompdf ★4812 - A HTML to PDF converter.
- PHPPdf ★314 - A library for generating PDFs and images from XML.
- Snappy ★2783 - A PDF and image generation library.
- WKHTMLToPDF ★6764 - A tool to convert HTML to PDF.
Office
Libraries for working with office suite documents.
- PHPPowerPoint ★717 - A library for working with Microsoft PowerPoint Presentations.
- PHPWord ★3327 - A library for working with Microsoft Word documents.
- PHPSpreadsheet ★3037 - A pure PHP library for reading and writing spreadsheet files (successor of PHPExcel)
Database
Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.
- Atlas.Orm ★355 - A data mapper implementation for your persistence model in PHP.
- Aura.Sql ★419 - Provides an extension to the native PDO along with a profiler and connection locator.
- Aura.SqlQuery ★278 - Independent query builders for MySQL, PostgreSQL, SQLite, and Microsoft SQL Server.
- Baum ★1770 - A nested set implementation for Eloquent.
- Cake ORM ★126 - Object-Relational Mapper, implemented using the DataMapper pattern (CP).
- Doctrine Extensions ★2194 - A collection of Doctrine behavioural extensions.
- Doctrine - A comprehensive DBAL and ORM.
- Eloquent ★1471 - A simple ORM (L5).
- LazyRecord ★3 ⏳1Y - A fast ORM designed for simplicity, extendability and performance.
- Pomm ★157 ⏳1Y - An Object Model Manager for PostgreSQL.
- Propel - A fast ORM, migration library and query builder.
- ProxyManager ★1547 - A set of utilities to generate proxy objects for data mappers.
- RedBean - A lightweight, configuration-less ORM.
- Spot2 ★548 - A MySQL datamapper ORM.
Migrations
Libraries to help manage database schemas and migrations.
- Doctrine Migrations - A migration library for Doctrine.
- Migrations ★35 ⏳1Y - A migration management library.
- Phinx ★3421 - Another database migration library.
- PHPMig ★466 - Another migration management library.
- Ruckusing ★481 - Database migrations for PHP ala ActiveRecord Migrations with support for MySQL, Postgres, SQLite.
NoSQL
Libraries for working with “NoSQL” backends.
- PHPMongo ★181 - A MongoDB ORM.
- Predis ★4604 - A feature complete Redis library.
Queue
Libraries for working with event and task queues.
- Bernard ★936 - A multibackend abstraction library.
- BunnyPHP ★383 - A performant pure-PHP AMQP (RabbitMQ) sync and also async (ReactPHP) library.
- Pheanstalk ★1376 - A Beanstalkd client library.
- PHP AMQP ★2229 - A pure PHP AMQP library.
- Tarantool Queue ★45 - PHP bindings for Tarantool Queue.
- Thumper ★247 - A RabbitMQ pattern library.
Search
Libraries and software for indexing and performing search queries on data.
- Elastica ★1657 - A client library for ElasticSearch.
- ElasticSearch PHP ★2426 - The official client library for ElasticSearch.
- Solarium - A client library for Solr.
- Sphinx Search ★53 ⏳1Y - 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.
- Aura.Cli ★100 - Provides the equivalent of request ( Context ) and response ( Stdio ) objects for the command line interface, including Getopt support, and an independent Help object for describing commands.
- Boris ★2166 ⏳1Y - A tiny PHP REPL.
- Cilex ★623 - A micro framework for building command line tools.
- CLI Menu ★1362 - A library for building CLI menus.
- CLIFramework ★343 - A command-line framework supports zsh/bash completion generation, subcommands and option constraints. It also powers phpbrew.
- CLImate ★1330 - A library for outputting colours and special formatting.
- Commando ★706 - Another simple command line opt parser.
- Cron Expression ★2833 - A library to calculate cron run dates.
- GetOpt ★196 - A command line opt parser.
- GetOptionKit ★113 ⏳1Y - Another command line opt parser.
- Hoa Console ★265 - Another command line library.
- PsySH ★5127 - Another PHP REPL.
- ShellWrap ★700 - A simple command line wrapper library.
Authentication and Authorization
Libraries for implementing user authentication and authorization.
- Aura.Auth ★108 - Provides authentication functionality and session tracking using various adapters.
- SocialConnect Auth ★290 - An open source social sign (OAuth1\OAuth2\OpenID\OpenIDConnect).
- Json Web Token ★2543 - Json Tokens to authenticate and transmit information.
- OAuth 1.0 Client ★350 - An OAuth 1.0 client library.
- OAuth 2.0 Client ★2019 - An OAuth 2.0 client library.
- OAuth2 Server - Another OAuth2 server implementation.
- OAuth2 Server - An OAuth2 authentication server, resource server and client library.
- Opauth ★1630 - A multi-provider authentication framework.
- PHP oAuthLib ★999 - Another OAuth library.
- Sentinel Social - A library for social network authentication.
- Sentinel - A framework agnostic authentication & authorisation library.
- TwitterOAuth ★3625 - A Twitter OAuth library.
Markup
Libraries for working with markup.
- Cebe Markdown ★761 - An fast and extensible Markdown parser.
- CommonMark PHP ★969 - A Markdown parser which supports the full CommonMark spec.
- Decoda ★175 - A lightweight markup parser library.
- Emoji ★39 ⏳1Y - A library that converts unicode characters and names into emoji images.
- HTML to Markdown ★773 - Converts HTML into Markdown.
- HTML5 PHP ★597 - An HTML5 parser and serializer library.
- Parsedown ★7880 - Another Markdown parser.
- PHP Markdown ★2715 - A Markdown parser.
Strings
Libraries for parsing and manipulating strings.
- Agent ★2089 - A PHP desktop/mobile user agent parser, based on Mobiledetect.
- ANSI to HTML5 ★125 - An ANSI to HTML5 converter library.
- Color Jizz ★240 ⏳1Y - A library for manipulating and converting colours.
- Device Detector ★1090 - Another library for parsing user agent strings.
- Hoa String ★124 - Another UTF-8 string library.
- Jieba-PHP ★596 - A PHP port of Python’s jieba. Chinese text segmentation for natural language processing.
- Mobile-Detect ★7901 - A lightweight PHP class for detecting mobile devices (including tablets).
- Patchwork UTF-8 ★63 ⏳2Y - A portable library for working with UTF-8 strings.
- Slugify ★1531 - A library to convert strings to slugs.
- SQL Formatter ★1445 - A library for formatting SQL statements.
- Stringy ★2124 - A string manipulation library with multibyte support.
- UA Parser - A library for parsing user agent strings.
- URLify ★547 - A PHP port of Django’s URLify.js.
- UUID ★5879 - A library for generating UUIDs.
Numbers
Libraries for working with numbers.
- ByteUnits ★69 - A library to parse, format and convert byte units in binary and metric systems.
- LibPhoneNumber for PHP ★2345 - A PHP implementation of Google’s phone number handling library.
- PHP Conversion ★94 ⏳2Y - Another library for converting between units of measure.
- PHP Units of Measure ★9 ⏳1Y - A library for converting between units of measure.
Filtering and Validation
Libraries for filtering and validating data.
- Aura.Filter ★113 - Provides tools to validate and sanitize objects and arrays.
- Cake Validation ★23 - Another validation library (CP).
- Filterus ★400 ⏳1Y - A simple PHP filtering library.
- ISO-codes ★510 - A library for validating inputs according standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries
- MetaYaml ★68 - A schema validation library that supports YAML, JSON and XML.
- Respect Validation ★4583 - A simple validation library.
- Upload ★1500 - A library for handling file uploads and validation.
- Valitron ★1000 - Another validation library.
- Volan ★35 - 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 ★471 - An API builder built with Zend Framework 2.
- Drest ★85 ⏳1Y - A library for exposing Doctrine entities as REST resource endpoints.
- HAL ★193 - A Hypertext Application Language (HAL) builder library.
- Hateoas ★834 - A HATEOAS REST web service library.
- Negotiation ★666 - A content negotiation library.
- Restler ★1242 - A lightweight framework to expose PHP methods as RESTful web API.
- wsdl2phpgenerator ★654 - 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 ★77 - A thin PSR-6 cache wrapper to various caching backends emphasising cache tagging and indexing.
- CacheTool ★578 - A tool to clear APC/opcode caches from the command line.
- Cake Cache ★16 - A caching library (CP).
- Doctrine Cache ★2060 - A caching library.
- Metaphore ★83 - Cache slam defense using a semaphore to prevent dogpile effect.
- Stash ★873 - Another library for caching.
- Zend Cache ★46 - Another caching library (ZF2).
Data Structure and Storage
Libraries that implement data structure or storage techniques.
- Cake Collection ★37 - A simple collections library (CP).
- Collections ★60 ⏳1Y - Collections Abstraction library for PHP.
- Fractal ★2486 - A library for converting complex data structures to JSON output.
- Ginq ★165 - Another PHP library based on .NET’s LINQ.
- JsonMapper ★788 - A library that maps nested JSON structures onto PHP classes.
- Knapsack ★399 - Collection library inspired by Clojure’s sequences.
- PINQ ★412 - A PHP library based on .NET’s LINQ (Language Integrated Query).
- Porter ★399 - Data import abstraction framework.
- Serializer ★977 - A library for serialising and de-serialising data.
- YaLinqo ★307 - Yet Another LINQ to Objects for PHP.
- Zend Serializer ★20 - Another library for serialising and de-serialising data (ZF2).
Notifications
Libraries for working with notification software.
- JoliNotif ★865 - A cross-platform library for desktop notification (support for Growl, notify-send, toaster, etc)
- Notification Pusher ★987 - A standalone library for device push notifications.
- Notificato ★203 - A library for handling push notifications.
- Notificator ★157 - A lightweight notification library.
- Php-pushwoosh ★50 - A PHP Library to easily send push notifications with the Pushwoosh REST Web Services.
Deployment
Libraries for project deployment.
- Deployer ★5742 - A deployment tool.
- Envoy ★1068 - A tool to run SSH tasks with PHP.
- Rocketeer ★2613 - A fast and easy deployer for the PHP world.
Internationalisation and Localisation
Libraries for Internationalization (I18n) and Localization (L10n).
- Aura.Intl ★74 ⏳1Y - Provides internationalization (I18N) tools, specifically package-oriented per-locale message translation.
- Cake I18n ★15 - Message translation and localization for dates and numbers (CP)
Third Party APIs
Libraries for accessing third party APIs.
- Amazon Web Service SDK ★3205 - The official PHP AWS SDK library.
- Campaign Monitor - The official Campaign Monitor PHP library.
- Dropbox SDK ★223 ⏳1Y - The official PHP Dropbox SDK library.
- Github ★1330 - A library to interface with the Github API.
- Mailgun ★721 The official Mailgun PHP API.
- Stripe ★1604 - The official Stripe PHP library.
- Twilio ★950 - The official Twilio PHP REST API.
Extensions
Libraries to help build PHP extensions.
- PHP CPP - A C++ library for developing PHP extensions.
- Zephir ★2312 - 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 ★2058 - An annotations library (part of Doctrine).
- BotMan ★3807 - A framework agnostic PHP library to build cross-platform chat bots.
- Cake Utility ★41 - Utility classes such as Inflector, String, Hash, Security and Xml (CP).
- Chief ★38 - A command bus library.
- ClassPreloader ★267 - A library for optimising autoloading.
- Country List ★3419 - A list of all countries with names and ISO 3166-1 codes.
- Embera ★160 - An Oembed consumer library.
- Essence ★639 - A library for extracting web media.
- Graphviz ★54 ⏳1Y - A Graphviz library.
- Hprose-PHP ★1237 - A very newbility RPC Library, support 25+ languages now.
- JSON Lint ★427 - A JSON lint utility.
- JSONPCallbackValidator ★276 ⏳1Y - A library for validating JSONP callbacks.
- Metrics ★247 - A simple metrics API library.
- noCAPTCHA ★212 - Helper for Google’s noCAPTCHA (reCAPTCHA).
- Nmap ★95 - A PHP wrapper around Nmap.
- Pagerfanta ★993 - A pagination library.
- PHP PassBook ★208 - A PHP library for iOS PassBook.
- PHP-ML ★5851 - A library for Machine Learning in PHP.
- PHPCR ★392 - A PHP port of the Java Content Repository (JCR).
- PHPStack - A TCP/IP stack proof of concept written in PHP.
- print_o ★118 ⏳1Y - An object graph visualizer.
- Procrastinator ★48 ⏳1Y - A library for running time consuming tasks.
- Prooph Service Bus ★355 - Lightweight message bus supporting CQRS and Micro Services
- RMT ★373 - A library for versioning and releasing software.
- sabre/vobject ★379 - A library for parsing VCard and iCalendar objects.
- Slimdump ★66 - An easy dumper tool for MySQL.
- Spork ★588 ⏳2Y - A process forking library.
- SuperClosure ★1019 - A library that allows Closures to be serialized.
- Symfony VarDumper - A variable dumper component (SF).
- Underscore - A PHP port of the Underscore JS library.
- Whoops ★7418 - 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 - A package manager for OSX.
- Brew PHP Switcher ★435 - Brew PHP switcher.
- PHP Brew ★3511 - A PHP version manager and installer.
- PHP Build ★756 - Another PHP version installer.
- PHP OSX - A PHP installer for OSX.
- 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.
- Docker - A containerization platform.
Virtual Machines
Alternative PHP virtual machines.
- Hack - A programming language for HHVM that interoperates seamlessly with PHP.
- HHVM ★15346 - A Virtual Machine, Runtime and JIT for PHP by Facebook.
Text Editors and IDEs
Text Editors and Integrated Development Environments (IDE) with support for PHP.
- Atom - A hackable text editor.
- Atom IDE - An IDE extension for Atom.
- 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.
- VS Code - An open source code editor.
Web Applications
Web-based applications and tools.
- 3V4L - An online PHP & HHVM shell.
- DBV - A database version control application.
- PHP Queue ★592 - An application for managing queueing backends.
- MailCatcher ★4328 - A web tool for capturing and viewing emails.
- Cachet ★8192 - The open source status page system.
- phpRedisAdmin ★1863 - A simple web interface to manage Redis databases.
- phpMyAdmin ★3124 - A web interface for MySQL/MariaDB.
- Adminer - Database management in a single PHP file.
- Grav ★9133 - A modern flat-file CMS.
- Lychee ★4389 - An easy to use and great looking photo-management-system.
Infrastructure
Infrastructure for providing PHP applications and services.
- appserver.io ★848 - A multithreaded application server for PHP, written in PHP.
- php-pm ★5022 - 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 Package Development Standards - Package development standards for PHP.
- 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.
- PHP Annotated Monthly - A monthly digest of PHP news.
Other Websites
Useful websites related to web development.
- Atlassian Git Tutorials - A series of Git tutorials.
- Hg Init - A series of Mercurial tutorials.
- Learning Linux - A website for learning Linux.
- 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.
- Modernizing Legacy Applications in PHP - A book about modernizing 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.
- Domain-Driven Design in PHP - Real examples written in PHP showcasing DDD Architectural Styles.
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.
- Nomad PHP Lightning Talks - 10 to 15 minute Lightning Talks by PHP community members.
- 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 Podcasts
Podcasts with a focus on PHP topics.
- PHP Town Hall - A casual PHP podcast by Ben Edmunds and Phil Sturgeon.
- Voices of the ElePHPant Interviews with the people that make the PHP community special.
- PHP Roundtable - The PHP Roundtable is a casual gathering of developers discussing topics that PHP nerds care about.
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.
- The 2018 Guide to Building Secure PHP Software - A guide to building secure PHP software.
- 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.
This list is a copy of ziadoz/awesome-php with ranks