Libraries for generating secure random numbers, encrypting data and scanning and testing 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.
- PHPGGC – A library of PHP unserializeable payloads along with a tool to generate them.
- PHP Encryption – Secure PHP Encryption Library.
- PHP SSH – An experimental object orientated SSH wrapper library.
- PHPSecLib – A pure PHP secure communications library.
- random_compat – PHP 5.x support for random_bytes() and random_int()
- RandomLib – A library for generating random numbers and strings.
- Symfony Security Monitoring – A web tool to check your Composer dependencies for security advisories, previously known as “SensioLabs Security Check”.
- SQLMap – An automatic SQL injection and database takeover tool.
- TCrypto – A simple encrypted key-value storage library.
- VAddy – A continuous security testing platform for web applications.
- Zap – 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.
- Better Reflection – AST-based reflection library that allows analysis and manipulation of code
- Code Climate – An automated code review.
- GrumPHP – A PHP code-quality tool.
- PHP Parser – A PHP parser written in PHP.
- PHP Semantic Versioning Checker – A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
- Phpactor – PHP completion, refactoring and introspection tool.
- 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).
- Qafoo Quality Analyzer – A tool to visualize metrics and source code.
- Rector – A tool to upgrade and refactor code.
- Scrutinizer – A web tool to scrutinise PHP code.
- UBench – A simple micro benchmark library.
Code Quality
Libraries for managing code quality, formatting and linting.
- CaptainHook – An easy-to-use and flexible Git hook library.
- PHP CodeSniffer – A library that detects PHP, CSS and JS coding standard violations.
- PHP CS Fixer – A coding standards fixer library.
- PHP Mess Detector – A library that scans code for bugs, sub-optimal code, unused parameters and more.
- PHPCheckstyle – A tool to help adhere to certain coding conventions.
- PHPCPD – A library that detects copied and pasted code.
Static Analysis
Libraries for performing static analysis of PHP code.
- Exakat – A static analysis engine for PHP.
- Deptrac – A static code analysis tool that helps to enforce rules for dependencies between software layers.
- Mondrian – A code analysis tool using Graph Theory.
- phan – A static analyzer based on PHP 7+ and the php-ast extension.
- PHP Architecture Tester – Easy to use architecture testing tool for PHP.
- PHPCompatibility – A PHP compatibility checker for PHP CodeSniffer.
- PhpDependencyAnalysis – A tool to create customisable dependency graphs.
- PHP Metrics – A static metric library.
- PHP Migration – A static analyzer for PHP version migration.
- PHPStan – A PHP Static Analysis Tool.
- Psalm – 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 – A repository of software patterns implemented in PHP.
- Finite – A simple PHP finite state machine.
- Functional PHP – A functional programming library.
- Iter – A library that provides iteration primitives using generators.
- Patchwork – A library for redefining userland functions.
- Pipeline – A pipeline pattern implementation.
- Porter – Data import abstraction library for consuming Web APIs and other data sources.
- 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 errors 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.
- Metrics – A simple metrics API library.
- PCOV – A self contained code coverage compatible driver.
- PHP Console – A web debugging console.
- PHP Debug Bar – A debugging toolbar.
- PHPBench – A benchmarking Framework.
- PHPSpy – A low-overhead sampling profiler.
- Symfony VarDumper – A variable dumper component.
- Tideways.io – Monitoring and profiling tool.
- Tracy – A simple error detection, logging and time measuring library.
- Whoops – A pretty error handling 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.
- Box – A utility to build PHAR files.
- Construct – A PHP project/micro-package generator.
- Phing – A PHP project build system inspired by Apache Ant.
- RMT – A library for versioning and releasing software.
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.
- KnpMenu – A menu library.
- Menu – A flexible menu library with a fluent interface.
Asset Management
Tools for managing, compressing and minifying website assets.
- JShrink – A JavaScript minifier library.
- Laravel Mix – An elegant wrapper around Webpack for the 80% use case.
- Symfony Asset – Manages URL generation and versioning of web assets.
- Symfony Encore – A simple but powerful API for processing and compiling assets built around Webpack.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
- Country List – A list of all countries with names and ISO 3166-1 codes.
- 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.
- Chronos – A DateTime API extension supporting both mutable and immutable date/time.
- Moment.php – Moment.js inspired PHP DateTime handler with i18n support.
- Yasumi – 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 – An event driven non-blocking I/O library.
- Broadway – An event source and CQRS library.
- CakePHP Event – An event dispatcher library.
- 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.
- Pawl – An asynchronous web socket client.
- Prooph Event Store – An event source component to persist event messages
- PHP Defer – Golang’s defer statement for PHP.
- Ratchet – A web socket library.
- ReactPHP – An event driven non-blocking I/O library.
- RxPHP – A reactive extension library.
- Swoole – An event-driven asynchronous and concurrent networking communication framework with high performance for PHP written in C.
- Workerman – An event driven non-blocking I/O library.
Logging
Libraries for generating and working with log files.
- 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.
- Brick\Money – A money library for PHP, with support for contexts, cash roundings, currency conversion.
- OmniPay – A framework agnostic multi-gateway payment processing library.
- Payum – A payment abstraction library.
- 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.
- PHPPowerPoint – A library for working with Microsoft PowerPoint Presentations.
- PHPWord – A library for working with Microsoft Word documents.
- PHPSpreadsheet – A pure PHP library for reading and writing spreadsheet files (successor of PHPExcel).
- Spout – Read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way .
Database
Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.
- Atlas.Orm – A data mapper implementation for your persistence model in PHP.
- Aura.Sql – Provides an extension to the native PDO along with a profiler and connection locator.
- Aura.SqlQuery – Independent query builders for MySQL, PostgreSQL, SQLite, and Microsoft SQL Server.
- Baum – A nested set implementation for Eloquent.
- CakePHP ORM – Object-Relational Mapper, implemented using the DataMapper pattern.
- Cycle ORM – PHP DataMapper, ORM.
- Doctrine Extensions – A collection of Doctrine behavioural extensions.
- Doctrine – A comprehensive DBAL and ORM.
- Laravel Eloquent – A simple ORM.
- Pomm – An Object Model Manager for PostgreSQL.
- ProxyManager – A set of utilities to generate proxy objects for data mappers.
- RedBean – A lightweight, configuration-less ORM.
- Slimdump – An easy dumper tool for MySQL.
- Spot2 – A MySQL datamapper ORM.
Migrations
Libraries to help manage database schemas and migrations.
- 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.
- 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.
- Enqueue – A message queue packages for PHP that supports RabbitMQ, AMQP, STOMP, Amazon SQS, Redis and Doctrine transports.
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.
- SphinxQL Query Builder – A query library for the Sphinx and Manticore search engines.
Command Line
Libraries related to the command line.
- Aura.Cli – 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 – 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.
- PsySH – Another PHP REPL.
- ShellWrap – A simple command line wrapper library.
Authentication and Authorization
Libraries for implementing user authentication and authorization.
- Aura.Auth – Provides authentication functionality and session tracking using various adapters.
- SocialConnect Auth – An open source social sign (OAuth1\OAuth2\OpenID\OpenIDConnect).
- Json Web Token – Json Tokens to authenticate and transmit information.
- 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.
- Paseto – Platform-Agnostic Security Tokens.
- 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.
Markup and CSS
*Libraries for working with markup and CSS formats.
- Cebe Markdown – An fast and extensible Markdown parser.
- CommonMark PHP – Highly-extensible Markdown parser which fully supports the CommonMark spec.
- Decoda – A lightweight markup parser library.
- Essence – A library for extracting web media.
- Embera – An Oembed consumer 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 CSS Parser – A Parser for CSS Files written in PHP.
- PHP Markdown – A Markdown parser.
- Shiki PHP – A Shiki code highlighting package in PHP.
- VObject – A library for parsing VCard and iCalendar objects.
JSON
Libraries for working with JSON.
- JSON Lint – A JSON lint utility.
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.
- Portable UTF-8 – A string manipulation library with UTF-8 safe replacement methods.
- Slugify – A library to convert strings to slugs.
- SQL Formatter – A library for formatting SQL statements.
- Stringy – A string manipulation library with multibyte support.
- 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.
- Brick\Math – A library providing large number support: BigInteger, BigDecimal and BigRational.
- ByteUnits – A library to parse, format and convert byte units in binary and metric systems.
- DecimalObject – A value object to handle decimals/floats easily and more precisely.
- IP – An immutable value object for working with IPv4 and IPv6 addresses.
- LibPhoneNumber for PHP – A PHP implementation of Google’s phone number handling library.
- PHP Conversion – Another library for converting between units of measure.
- PHP Units of Measure – A library for converting between units of measure.
- MathPHP – A math library for PHP.
Filtering and Validation
Libraries for filtering and validating data.
- Assert – A validation library with a rich set of assertions. Supports assertion chaining and lazy assertions.
- Aura.Filter – Provides tools to validate and sanitize objects and arrays.
- CakePHP Validation – Another validation 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.
- JSON Schema – A JSON Schema validation library.
- 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.
- Laminas API Tool Skeleton – An API builder built with the Laminas Framework.
- 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 and Locking
Libraries for caching data and acquiring locks.
- 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.
- CakePHP Cache – A caching library.
- Doctrine Cache – A caching library.
- Metaphore – Cache slam defense using a semaphore to prevent dogpile effect.
- Stash – Another library for caching.
- Laminas Cache – Another caching library.
- Lock – A lock library to provide exclusive execution.
Data Structure and Storage
Libraries that implement data structure or storage techniques.
- CakePHP Collection – A simple collections library.
- 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.
- JSON Machine – Provides iteration over huge JSONs using simple foreach
- Knapsack – Collection library inspired by Clojure’s sequences.
- msgpack.php – A pure PHP implementation of the MessagePack serialization format.
- PINQ – A PHP library based on .NET’s LINQ (Language Integrated Query).
- Serializer – A library for serialising and de-serialising data.
- YaLinqo – Yet Another LINQ to Objects for PHP.
- Laminas Serializer – Another library for serialising and de-serialising data.
Notifications
Libraries for working with notification software.
- JoliNotif – A cross-platform library for desktop notification (support for Growl, notify-send, toaster, etc)
- 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.
- Rocketeer – A fast and easy deployer for the PHP world.
Internationalisation and Localisation
Libraries for Internationalization (I18n) and Localization (L10n).
- Aura.Intl – Provides internationalization (I18N) tools, specifically package-oriented per-locale message translation.
- CakePHP I18n – Message translation and localization for dates and numbers.
Serverless
Libraries and tools to help build serverless web applications.
- Bref – Serverless PHP on AWS Lambda.
- OpenWhisk – An open-source serverless cloud platform.
- Serverless Framework – An open-source framework for building serverless applications.
- Laravel Vapor – A serverless deployment platform for Laravel, powered by AWS.
Configuration
Libraries and tools for configuration.
- PHP Dotenv – Parse and load environment variables from .env files.
- Symfony Dotenv– Parse and load environment variables from .env files.
- Yo! Symfony TOML – A PHP parser for TOML.
Third Party APIs
Libraries for accessing third party APIs.
- Amazon Web Service SDK – The official PHP AWS SDK library.
- AsyncAWS – An unofficial asynchronous PHP AWS SDK.
- Campaign Monitor – The official Campaign Monitor PHP library.
- Github – A library to interface with the Github API.
- Mailgun The official Mailgun PHP API.
- Square – The official Square PHP SDK for payments and other Square APIs.
- Stripe – The official Stripe PHP library.
- Twilio – The official Twilio PHP 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 utilities that don’t fit into the categories above.
- Annotations – An annotation library (part of Doctrine).
- BotMan – A framework agnostic PHP library to build cross-platform chat bots.
- ClassPreloader – A library for optimising autoloading.
- Hprose-PHP – A cross-language RPC.
- noCAPTCHA – Helper for Google’s noCAPTCHA (reCAPTCHA).
- Pagerfanta – A pagination library.
- Safe – All PHP functions, rewritten to throw exceptions instead of returning false.
- SuperClosure – A library that allows Closures to be serialized.
Software for creating a development environment.
PHP Installation
Tools to help install and manage PHP on your computer.
- Brew PHP Switcher – Brew PHP switcher.
- HomeBrew – A package manager for OSX.
- Laravel Valet – A development environment for macOS.
- PHP Brew – A PHP version manager and installer.
- PHP Build – Another PHP version installer.
- PHP OSX – A PHP installer for OSX.
Development Environment
Software and tools for creating and sharing a development environment.
- Ansible – A radically simple orchestration framework.
- Docker – A containerization platform.
- Docker PHP Extension Installer – Easily install PHP extensions in Docker containers.
- Expose – An open source PHP tunneling service.
- Lando – Push-button development environments.
- Laravel Homestead – A local development environment for Laravel.
- Laradock – A full PHP development environment based on Docker.
- Puppet – A server automation framework and application.
- Takeout – A Docker-based development-only dependency manager.
- Vagrant – A portable development environment utility.
Virtual Machines
Alternative PHP virtual machines.
- Hack – A programming language for HHVM.
- HHVM – A Virtual Machine, Runtime and JIT for PHP by Facebook.
- PeachPie – PHP compiler and runtime for .NET and .NET Core.
Text Editors and IDEs
Text Editors and Integrated Development Environments (IDE) with support for PHP.
- Eclipse for PHP Developers – A PHP IDE based on the Eclipse platform.
- Apache 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 – 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.
- phpMyAdmin – A web interface for MySQL/MariaDB.
- Adminer – Database management in a single PHP file.
- Lychee – An easy to use and great looking photo-management-system.
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.
- RoadRunner – High-performance PHP application server, load-balancer and process manager.
Various resources, such as books, websites and articles, for improving your PHP development skills and knowledge.