Valuable communities, blogs, websites, articles, books, videos, and other resources related to PHP
-
PHP Websites
- PHP The Right Way - A quick reference guide to PHP best practices
- PHP Best Practices - PHP best practices
- Clean Code PHP - PHP coding standards
- PHP Weekly News - PHP weekly newsletter archive
- Securing PHP - Resources on PHP security
- PHP FIG - PHP Framework Interoperability Group
- PHP School - Open-source PHP learning resources
- PHPTrends - Search for rapidly growing PHP libraries
- PHP Developer Prepares - PHP developer practices
-
Recommended Articles
- The 2018 Guide to Building Secure PHP Software - Chinese translation: 2018 PHP Application Security Design Guide
- advanced-php - Articles on PHP multiprocessing, sockets, etc.
- LEARN REGEX THE EASY WAY - Learning regular expressions
-
Other Websites
- The Open Web Application Security Project (OWASP) - Open-source web application security community
- WebSec IO - Web security community
- Semantic Versioning - Semantic versioning (Chinese version available)
- Atlassian Git Tutorials - Series of Git tutorials
- Servers for Hackers - Server operations and maintenance resources
- be-a-professional-programmer - Resources, tools, and frameworks for becoming a professional programmer
- PHP Security Advisories Database - Database of PHP security advisories
-
PHP Books
- Modern PHP - By the initiator of PHP The Right Way and author of Slim framework
- PHP Pandas
- ppts_for_php2017 - PPTs/Keynotes from the 2017 Third Global PHP Developers Conference
- PHP-Data-Structure-and-Algorithms
- DesignPatternsPHP - PHP design patterns
-
Other Books
- The Linux Command Line - Linux command line tutorial
- architecture.of.internet-product - Technical architecture of internet companies
- architect-awesome - Backend architect technology roadmap
Packages and frameworks for dependency management
- Composer / Packagist - Package and dependency manager
- composer/installers - Multi-framework Composer library installer
- hirak/prestissimo - Parallel installation of Composer dependencies
- composer/satis - Build private Composer package repositories
- FriendsOfPHP/pickle - PHP extension installer
- Melody - Tool to build one-file Composer scripts
- tommy-muehle/tooly-composer-script - Library for managing PHAR files with Composer
Web development frameworks
- laravel/laravel - Elegant and simple PHP web development framework
- symfony/symfony - Framework composed of independent components (Symfony)
- yiisoft/yii2 - High-performance PHP framework for developing large web applications
- cakephp/cakephp - Efficient application development framework (CakePHP)
- phalcon/cphalcon - High-performance C extension framework
- Yaf - C extension framework by Laruence
- overtrue/yaf-skeleton - Testable Yaf skeleton with Composer support
- swoole - Production-grade PHP asynchronous network communication engine
- SwooleDistributed/SwooleDistributed - Swoole distributed full-stack framework
- swoft-cloud/swoft - Next-generation high-performance PHP coroutine framework based on Swoole https://www.swoft.org
- hyperf/hyperf - Enterprise-level PHP coroutine microservices framework
- mixphp/mix - High-performance PHP framework with FPM, resident memory, and coroutine modes based on Swoole (well-documented) http://mixphp.cn
- hhxsv5/laravel-s - Integrate Swoole into Laravel or Lumen
- swooletw/laravel-swoole - High-performance HTTP server based on Swoole to accelerate Laravel/Lumen applications
- scil/LaravelFly - Safe solution to run Laravel with Swoole coroutines + Tinker online
- garveen/laravoole - Laravel with Swoole or Workerman for 10x faster performance than php-fpm
- easyswoole/easyswoole - Use Swoole easily like echo "hello world"
- bingcool/swoolefy - Lightweight, high-performance, coroutine-level, open API and MVC application service framework based on Swoole
- youzan/zan - Youzan open-source PHP framework (maintenance stopped)
- php-msf - Camera360 open-source microservices framework
- Biny - Tencent open-source high-performance lightweight PHP framework
- zendframework/zendframework - Zend framework
- auraphp - Collection of independent component packages
- Hoa Project - Collection of PHP components
- andersao/l5-repository - Support for Repository development pattern
Libraries and extensions for loading configuration files
- Yaconf - High-performance configuration management extension
- config - Lightweight configuration loader supporting PHP, INI, XML, JSON, YAML files
- Zend-config
- phpdotenv - Load global highest-priority variables from .env
- symfony/yaml - Load and dump YAML configuration files
Micro frameworks and routers
- Lumen - Micro framework based on Laravel
- Silex - Micro framework based on Symfony components
- Silex Skeleton - Project skeleton for Silex
- Silex Web Profiler - Web debug toolbar for Silex
- Slim - Another simple micro framework
- awesome-slim
- Slim Skeleton - Skeleton for Slim
- Slim View - Custom view collection for Slim
- Slim Middleware - Custom middleware collection for Slim
- slim-skeleton - MVC implementation with components on Slim
- slim-boilerplate
- Bullet PHP - Micro framework for building REST APIs
- Proton - Micro PHP framework
- blink - High-performance web micro framework for building long-running services
- flight - Extensible PHP micro framework
- Fast Route - Efficient routing library
- Route - Routing library based on Fast Route
- Pux - Another efficient routing library
- Klein - Flexible routing library
- Macaw - Simple, fast, and sexy PHP router
Libraries and tools for templating and lexing
- Twig - Comprehensive templating language
- asm89/twig-cache-extension - Template fragment caching library for Twig
- rcrowe/TwigBridge - Twig template engine support
- Mustache - Mustache template language implemented in PHP
- Phly Mustache - Another Mustache implementation in PHP
- MtHaml - HAML template language implemented in PHP
- PHPTAL - TAL template language implemented in PHP
- Plates - Native PHP template library
- Lex - Lightweight template parser
- Aura.View - Provides TemplateView and TwoStepView
Pre-processing tools for generating web page content
- Sculpin - Tool to convert Markdown and Twig to static HTML
- Phrozn - Tool to convert Textile, Markdown, and Twig to HTML
- Spress
- Couscous - Tool to convert Markdown documentation to HTML for publishing on GitHub Pages
Libraries for HTTP and web scraping
- guzzle/guzzle - Full-featured HTTP client
- amphp/artax - Asynchronous HTTP client for PHP
- Buzz - Another HTTP client
- Requests - Simple HTTP library
- HTTPFul - Chainable HTTP client
- FriendsOfPHP/Goutte - Simple web scraper
- PHP VCR - Library for recording and replaying HTTP requests
- php-curl-class - PHP Curl class
- Beanbun - Multi-process web crawler framework
- php-mod/curl - PHP Curl Class
- medz/cors - PHP CORS (Cross-origin resource sharing) middleware
- barryvdh/laravel-cors - Cross-origin resource sharing support
- soap-client - General-purpose SOAP client for PHP
- soap-client - PHP implementation of SOAP 1.1 and 1.2 client specifications
- wsdl2phpgenerator - Utility and class library for generating PHP classes from WSDL files
- laravel-soap - SOAP protocol client
Middleware libraries for building applications
Libraries for parsing URLs
- Purl - URL manipulation library
- PHP Domain Parser - Public suffix list-based domain parser
- Uri - Simple URL manipulation library
Libraries for sending and parsing emails
- swiftmailer/swiftmailer - Email solution
- PHPMailer/PHPMailer - Another email solution
- nette/mail - Simple and elegant email sending module
- tedivm/Fetch - IMAP library
- willdurand/EmailReplyParser - Email reply parser library
- henrikbjorn/Stampie - Library for email services like SendGrid, PostMark, MailGun, Mandrill
- tijsverkoyen/CssToInlineStyles - Inline CSS library for email templates
- nojacko/email-validator - Small email validation library
- egulias/EmailValidator - PHP email validator library
- Snowfire/Beautymail - Laravel HTML email templates
File handling and MIME type detection
- symfony/finder - Find files and directories with intuitive interface
- Gaufrette - Filesystem abstraction layer
- thephpleague/flysystem - Another filesystem abstraction layer
- Canal - Internet media type detection library
- Apache MIME Types - Apache MIME types parser library
- Ferret - MIME detection library
- Hoa Mime - Another MIME detection library
- Lurker - Resource tracking library
- PHP File Locator - File locator in large projects
- PHP FFmpeg - FFmpeg video wrapper library
- GrahamCampbell/Laravel-Flysystem - Filesystem operations with multi-platform support
Libraries for handling streams
- Streamer - Simple object-oriented stream wrapper library
Libraries implementing dependency injection pattern
- Pimple - Small dependency injection container
- container-interop - Containers interoperability
- Auryn - Another small dependency injection container
- Container - Flexible dependency injection container
- PHP DI - Dependency injection using annotations
- Acclimate - Common interface for dependency injection containers and service locators
- Symfony DI - Dependency injection component (Symfony)
- Twittee
- simple di container
- Ding
- di - Yii DI container and injector
Libraries for image processing
- Intervention/image - Image manipulation library
- Intervention/imagecache - Image caching enhancement tool
- Imagine - Image processing library
- Sybio/ImageWorkshop - Another image processing library
- Sybio/GifFrameExtractor - Library for extracting GIF animation frame information
- Sybio/GifCreator - Library for creating GIF animations from multiple images
- nmcteam/image-with-text - Library for embedding text in images
- php-loep/color-extractor - Library for extracting colors from images
- thephpleague/glide - On-demand image manipulation library
- psliwa/image-optimizer - Image optimization library
- PHPThumb - Thumbnail processing library
- t0k4rt/phpqrcode - QR code generation library
- endroid/qr-code - Another QR code generation library
- Bacon/BaconQrCode - QR Code Generator for PHP
- SimpleSoftwareIO/simple-qrcode - QR code generation tool
- lsolesen/pel - PHP Exif library
- php-exif - PHP Exif information reading library
- Gregwar/Image - Image processing library
- Gregwar/Captcha - Graphical captcha
- google/recaptcha - Google reCAPTCHA client library
- mewebstudio/captcha - Image captcha solution
Libraries for testing code and generating test data
- PHPUnit - Unit testing framework
- DBUnit - Code testing library for PHPUnit
- ParaTest - Parallel testing library for PHPUnit
- PHPSpec - Specification-based unit testing library
- Codeception - Full-stack testing framework
- AspectMock - Mocking framework for PHPUnit/Codeception
- Atoum - Simple testing library
- Mockery - Mock object library for testing
- Phake - Another mock object library for testing
- Prophecy - Powerful mocking framework
- Faker - Fake data generation library
- Samsui - Another fake data generation library
- Alice - Library for generating complex data
- Behat - Behavior-driven development (BDD) testing framework
- Pho - Another BDD testing framework
- Mink - Web acceptance testing
- HTTP Mock - Library for mocking HTTP requests in unit tests
- VFS Stream - Virtual filesystem stream wrapper for testing
- VFS - Another virtual filesystem for testing
- Locust - Modern load testing library developed in Python
- Peridot - Event-driven testing framework
- SimpleTest - Unit Testing for PHP
- testbench - Unit testing tool for Laravel packages
- laracasts/TestDummy - Fake data creation tool by Laracasts
Libraries and applications for continuous integration
- Travis CI - Continuous integration platform
- SemaphoreCI - Continuous integration platform for open-source and private projects
- PHPCI - Open-source continuous integration platform for PHP
- Sismo - Continuous testing server library
- Jenkins - Continuous integration platform with PHP support
- JoliCi - Docker-supported continuous integration client developed in PHP
Libraries for generating project documentation
- Sami - API documentation generator
- APIGen - Another API documentation generator
- PHP Documentor 2 - Documentation generator
- phpDox - Documentation generator for PHP projects (not just API)
- swagger-php - PHP Swagger annotation and parsing library
Libraries for generating secure random numbers, encrypting data, scanning vulnerabilities, tokens
- ezyang/htmlpurifier - Standard-compliant HTML filter
- random_compat - Library for generating secure random numbers in PHP 5.x (PHP 7 has built-in
random_bytes()andrandom_int()) - RandomLib - Library for generating random numbers and strings
- True Random - Library using www.random.org for random numbers
- SecurityMultiTool - PHP security library
- PHPSecLib - Pure PHP secure communication library
- TCrypto - Simple key-value encryption storage library
- PHP IDS - Structured PHP security layer
- PHP SSH - Object-oriented SSH wrapper library
- IniScan - Tool for scanning PHP INI files for security
- SensioLabs Security Check - Web tool for checking Composer dependencies against security advisories
- Zed - Integrated penetration testing tool for web applications
- php-ratelimiter
- xxtea-php - XXTEA encryption algorithm library for PHP
- mewebstudio/Purifier - Whitelist filtering for user-submitted HTML
- defuse/php-encryption - Symmetric key encryption library
- paragonie/halite - Libsodium wrapper providing advanced encryption interfaces
Libraries and tools for handling and storing passwords, various encodings
- ircmaxell/password_compat - Compatibility library for new PHP 5.5 password functions
- phpass - Portable password hashing framework
- ircmaxell/PHP-PasswordLib - Library for generating and verifying passwords
- ircmaxell/password-policy - Password policy library for PHP and JavaScript
- jeremykendall/password-validator - Library for validating and upgrading password hashes
- bjeavons/zxcvbn-php - PHP password strength estimation library based on Zxcvbn JS
- timoh6/GenPhrase - Library for generating secure random passphrases
- tuupola/base62 - Base62 encoding library (short URL applications)
- stephen-hill/base58php - Base58 encoding library (unique encoding used in Bitcoin for wallet addresses)
- base85 - Base85 encoding library (further compression on base64, used in Adobe PostScript and PDF)
- bjeavons/zxcvbn-php - Password strength evaluation library (stronger passwords are harder to crack)
Tools for analyzing, parsing, and manipulating code
- PHP Parser - PHP parser written in PHP
- PHPPHP - PHP virtual machine implemented in PHP
- PHPSandbox - PHP sandbox environment
- Dissect - Set of lexical and syntactic analysis tools
- PHP Mess Detector - Library for scanning code bugs, suboptimal code, and unused parameters
- PHP_CodeSniffer - PHP/CSS/JS code standards and quality checker
- PHP CS Fixer - PHP code standards and quality fixer
- phpmd - PHP code standards and quality checker
- PHPCPD - Library for detecting copy-paste code
- PHP Analyser - Library for analyzing errors in PHP code
- PHP Manipulator - Library for analyzing and modifying PHP source code
- PHP Metrics - Static metrics library
- PHP Refactoring Browser - Command-line tool for refactoring PHP code
- php-semver-checker - Semantic version comparison command-line tool
- UBench - Simple micro-benchmark library
- Athletic - Annotation-based benchmark library
- Mondrian - Code analysis tool using graph theory
- Scrutinizer - Web tool for checking PHP code
- PHPLOC - Quick tool for evaluating PHP project size
- PHPCheckstyle - Tool for adhering to specific code rules
- PhpDependencyAnalysis - Tool for creating customizable dependency graphs
- Code Climate - Automated code review
- PHP Error - Better PHP error reporting for development debugging
- psalm - Static analysis tool to identify potential bugs
- phan - Static code analysis tool
- phpstan - Static code analysis tool
- PHPLint - PHP file syntax checker (multi-process, based on
php -l)
Libraries related to design patterns, programming paradigms, and code organization
- PHP Option - PHP option type library
- Ruler - Simple stateless production rule engine
- Finite - Simple PHP finite state machine
- Compose - Function composition library
- Monad PHP - Simple Monad library
- Patchwork - Library for redefining user functions
- Galapagos - Language evolution
- Design Patterns PHP - Design pattern examples implemented in PHP
- Functional PHP - Functional programming library
- Lib Accessor - Library for simplifying access
- Iter - Library providing iteration primitives using generators
- laracasts/Laravel-5-Generators-Extended - Code generation tool by Laracasts
- symfony/workflow - Workflow component tools for managing workflows or finite state machines
Libraries and tools for debugging code
- xDebug - PHP debugging and profiling tool
- whoops
- PHP Debug Bar - Debugging toolbar
- PHP Console - Web debugging console
- Barbushin PHP Console - Web debugging tool using Google Chrome
- PHPDBG - Interactive PHP debugger
- Tracy - Simple error detection, logging, and timing library
- Z-Ray - Debugging and profiling tool
- xHprof - Facebook open-source PHP performance profiling tool
- Blackfire.io - Low-overhead code profiler
- Kint - Debugging and profiling tool
- phptrace - 360 open-source PHP execution tracing tool
- php-apm - Application performance management for PHP
- BooBoo - Centralized exception handling
- Collision - Error handler framework for CLI PHP applications
- symfony/debug - PHP debug library
- Molten - Transparent application link tracing tool (PHP extension)
- laravel-debugbar - Laravel debugger
- itsgoingd/clockwork - Debugging tool with Chrome plugin
- GrahamCampbell/Laravel-Exceptions - Error exception handling tool (supports dev and prod, uses Whoops for display)
Project build and automation tools
- Go - Simple PHP build tool
- Bob - Simple project automation tool
- Phake - PHP clone library
- Box - Tool for building PHAR files
- Phing - PHP project build system based on Apache Ant
Libraries for automating task execution
- Task - Pure PHP task runner based on Grunt and Gulp
- Robo - Object-oriented PHP task runner
- Bldr - PHP task runner built on Symfony components
Tools for building navigation structures
- KnpMenu - Menu library
- Cartographer - Sitemap generation library
Tools for managing, compressing, and minifying website assets
- kriswallsmith/assetic - Asset pipeline library
- CHH/pipe - Another asset pipeline library
- meenie/munee - Asset optimization library
- tedivm/JShrink - JavaScript minification library
- webmozart/puli - Library for detecting absolute paths of resources
- Chumper/Zipper - ZIP packaging tool (based on ZipArchive)
- HTMLMin/Laravel-HTMLMin - HTML compression tool based on minify
Libraries for geocoding addresses with latitude and longitude
- geocoder-php/Geocoder - Geolocation toolset (based on Geocoder)
- php-loep/Geotools - Geo-related tools library
- mjaschen/phpgeo - Simple geo library
- jmikola/geojson - GeoJSON implementation
- laravel-geoip - Get geographic location from IP (GeoIP database)
- lionsoul2014/ip2region - IP address location library
- maxmind/GeoIP2-php - GeoIP database PHP client
Libraries for handling dates and times
- Carbon - Simple date/time API extension
- ExpressiveDate - Another date/time API extension
- CalendR - Calendar management library
- date - Multilingual date library
- moment.php
Libraries for event-driven or non-blocking event loops
- React - Event-driven non-blocking I/O library
- Rx.PHP - Reactive extensions library
- phpsocket.io
- Ratchet - WebSocket library
- Hoa WebSocket - Another WebSocket library
- Elephant.io - Another WebSocket library
- Hoa EventSource - EventSource library
- Evenement - Event dispatcher library
- Event - Event package for apps/domains
- Cake Event - Event dispatcher class library
- Broadway - Event sourcing and CQRS library
Libraries for generating and handling log files
- Monolog - Comprehensive logging library
- KLogger - Easy-to-use PSR-3 logger
- Analog - Micro logging package using closures
- SeasLog - Efficient logging extension
- rap2hpoutre/laravel-log-viewer - Convenient page-based log viewer tool
Libraries and applications for payments and building online e-commerce stores
- OmniPay - Multi-gateway payment processing framework
- omnipay-paypal - PayPal payment
- omnipay-wechatpay - WeChat payment
- omnipay-unionpay - UnionPay payment
- omnipay-alipay - Alipay payment
- omnipay-pingpp - Ping++ aggregated payment
- omnipay-99bill - 99Bill payment
- Payum - Payment abstraction library
- Sylius - Open-source e-commerce solution
- Thelia - Another open-source e-commerce solution
- Money - Fowler's Money pattern implemented in PHP
- Sebastian Money - Library for handling currency values
- Swap - Exchange rate library
- yansongda/pay - Elegant Alipay and WeChat payment SDK package
- paypal/PayPal-PHP-SDK - PHP SDK for PayPal RESTful APIs https://developer.paypal.com/docs/api/
- paypal/Checkout-PHP-SDK - PHP SDK for Checkout RESTful APIs
Libraries and software for handling PDF files
- Snappy - PDF and image generation library
- WKHTMLToPDF - Tool for converting HTML to PDF
- PHPPdf - Library for converting XML to PDF and images
- phpwkhtmltopdf
- php-pdftk - PDF conversion and form utility based on pdftk
- barryvdh/laravel-dompdf - PDF tool (based on dompdf)
- laravel-snappy - PDF processing tool
Libraries for handling various Office suite documents
- PHPOffice/PHPWord - Word document processing library
- PHPOffice/PHPExcel - Excel document processing library
- PHPOffice/PHPPowerPoint - PowerPoint slide processing library
- Wisembly/ExcelAnt - Excel document manipulation library
- PHPOffice/PhpSpreadsheet - Recommended latest PHPOffice-maintained Excel document processing library
- viest/php-ext-excel-export - PHP extension for Excel operations
- Maatwebsite/Laravel-Excel - Excel processing tool
- thephpleague/csv - CSV data manipulation library
Database interaction libraries using ORM or data mapper techniques
- Doctrine - Complete DBAL and ORM
- Doctrine Extensions - Collection of Doctrine behavior extensions
- Propel - Fast ORM, migration, and query library
- Eloquent - Laravel ORM
- baum/baum - Nested Set model support
- VentureCraft/revisionable - Operation logging for data models (e.g., admin logs)
- nicolaslopezj/searchable - Add search functionality to Eloquent models via Trait
- Tucker-Eric/EloquentFilter - Custom query conditions (model field filtering)
- rtconner/laravel-tagging - Add tagging functionality to Eloquent models
- LazyRecord - Fast ORM
- Baum - Eloquent nested set
- Spot2 - MySQL ORM mapper
- RedBean - Lightweight, configurable ORM
- Pomm - Object model manager for PostgreSQL
- ProxyManager - Toolset for generating proxy objects for data mapping
- Cake ORM - Object-relational mapper using data mapper pattern
- catfan/Medoo - Lightweight ORM for accelerating development
- auraphp/Aura.Sql - SQL database access through PDO
- EasyDB - Database abstraction layer
Libraries for managing database schemas, migrations, backups
- davedevelopment/phpmig - Migration management library
- robmorgan/phinx - Database migration management library
- icomefromthenet/Migrations - Another migration management library
- Doctrine Migrations - Migration library for Doctrine
- Xethron/migrations-generator - Export existing database tables as migrations, including indexes and foreign keys
- orangehill/iseed - Export database data as seeds
- spatie/laravel-backup - Data backup tool (supports compression and various filesystems)
Libraries for handling NoSQL backends
- MongoDB
- mongo-php-library - Official MongoDB PHP library
- MongoQB - MongoDB query builder library
- Monga - MongoDB abstraction library
- mongodm - MongoDB ORM
- php-mongo - PHP ODM for MongoDB
- jenssegers/laravel-mongodb - MongoDB database support
- Redis
Libraries for handling event and task queues
- enqueue-dev - Message queue packages for PHP, Symfony, Laravel, Magento
- enqueue/rdkafka
- enqueue/enqueue
- enqueue/pheanstalk
- enqueue/redis
- php-enqueue/dsn Queue Service Frameworks
- Kafka - High-throughput distributed publish-subscribe messaging system
- RabbitMQ - AMQP implementation in Erlang
- RocketMQ
- ActiveMQ
- Qpid
- Disque - Distributed in-memory queue
- beanstalkd - High-performance lightweight message queue middleware Queue-Related Libraries
- Pheanstalk - Beanstalkd client library
- PHP AMQP - Pure PHP AMQP library
- Thumper - RabbitMQ pattern library
- Bernard - Multi-backend abstraction library
- php-resque - Redis-based message queue
- php-amqplib - RabbitMQ client library
- kafka-php - Kafka client library (Composer)
- php-rdkafka - Kafka client library (PECL)
Libraries and software for indexing and querying data
- ElasticSearch PHP - Official client library for ElasticSearch
- Elastica - Another ElasticSearch client library
- Solarium - Client library for Solr
- SphinxQL query builder - Query library for Sphinx search engine
Libraries for building command-line tools
- symfony/console - Symfony console component
- symfony/process - Symfony process execution component (for running system commands)
- Boris - Tiny PHP REPL
- PsySH - Another PHP REPL
- Pecan - Event-driven non-blocking shell
- GetOpt - Command-line option parser
- OptParse - Another command-line option parser
- Commando - Simple command-line option parser
- GetOptionKit - Yet another command-line option parser
- mtdowling/cron-expression - Library for calculating cron run dates
- ShellWrap - Simple command-line wrapper library
- Hoa Console - Another console library
- Shunt - Library for running commands in parallel on multiple remote machines
- Cilex - Micro-framework for building command-line tools
- CLImate - Framework for building command-line tools (supports colors and special formats)
- Webmozart Console
- Silly - CLI micro-framework based on Symfony Console
- php-shellcommand - Simple object-oriented interface for executing shell commands in PHP
- PHP-Console-Highlighter - Highlight PHP code in command line
Crontab management and PHP encapsulations for scheduled tasks
- Indatus/dispatcher - Laravel-based scheduled task management
- osgochina/swoole-crontab - Swoole-based timer supporting second-level processing
- jobbyphp/jobby - PHP cron job manager
- ajbdev/cronlingo - Express crontabs as human-friendly phrases
- Indatus/dispatcher - Scheduled task dispatcher (direct replacement for Cron)
Libraries implementing authentication patterns
- Sentinel - Authentication and authorization framework
- Sentinel Social - Library for social network authentication
- Opauth - Supports OAuth authentication with unified access methods
- OAuth2 Server - OAuth2 authentication server, resource server, and client library
- OAuth2 Server - OAuth2 server implementation
- PHP oAuthLib - Another OAuth library
- ruudk/twitteroauth - Twitter OAuth library
- Hawk - Hawk HTTP authentication library
- HybridAuth - Open-source social login library
- Lock - Access Control Lists (ACL) system library
- OAuth 1.0 Client - OAuth 1.0 client library
- OAuth 2.0 Client - OAuth 2.0 client library
- Sentry - Authentication and authorization system
- EvaOAuth - Unified OAuth login PHP class library
- JSON Web Token
- firebase/php-jwt
- lcobucci/jwt
- namshi/jose - Library for JSON signing and encryption
- tuupola/slim-jwt-auth
- tymondesigns/jwt-auth - JWT user authentication mechanism
- Sapient - Secure API messaging validation
- legalthings/sso - Simple Single Sign-On for PHP
- antonioribeiro/google2fa - Two-factor authentication (supports Google Authenticator and HOTP)
- PHPGangsta/GoogleAuthenticator - Google two-factor authentication
Role and permission control components
- spatie/laravel-permission - Laravel-based permission component
- Zizaco/entrust - Role-based user permission system
- php-casbin/php-casbin - PHP implementation of lightweight open-source access control framework Casbin
Libraries for handling markup
- Decoda - Lightweight markup parsing library
- michelf/php-markdown - Markdown parser
- thephpleague/commonmark - Markdown parser supporting CommonMark spec
- thephpleague/html-to-markdown - HTML to Markdown converter
- erusev/parsedown - Markdown parser
- kzykhys/Ciconia - GitHub-flavored Markdown parser
- cebe/markdown - Fast and extensible Markdown parser
- GrahamCampbell/Laravel-Markdown - Markdown parser
- Masterminds/html5-php - HTML5 parsing and serialization library
- heyupdate/Emoji - Simple emoji handling library
- iamcal/php-emoji - Emoji conversion library
Libraries for parsing and manipulating strings
- jenssegers/agent - Client User Agent parser (based on MobileDetect)
- sensiolabs/ansi-to-html - ANSI to HTML5 converter library
- nicolas-grekas/Patchwork-UTF8 - Portable UTF-8 string handling library
- hoaproject/String - Another UTF-8 string library
- danielstjules/Stringy - Multibyte-supported string manipulation library
- mikeemoo/ColorJizz-PHP - Color handling and conversion library
- ramsey/uuid - UUID generation library
- laravel-uuid - RFC 4122 UUID generation
- cocur/slugify - String to slug converter library
- jbroadway/urlify - PHP port of Django URLify.js
- kzykhys/Text - Text processing library
- jdorn/sql-formatter - SQL statement formatting library
- tobie/ua-parser - User Agent string parser library
- piwik/device-detector - Another User Agent parser library
- serbanghita/Mobile-Detect - Lightweight mobile device detection library (including desktops)
- cbschuld/Browser.php - Detect user browser environment
- hisorange/browser-detect - Browser detection tool (including JavaScript and CSS support)
- colors.php - Easy way to add colors in CLI scripts
- cviebrock/eloquent-sluggable - Article title URL slug processing tool
- fukuball/jieba-php - "Jieba" Chinese word segmentation
Libraries for handling numbers
- Numbers PHP - Number handling library
- Math - Big number handling library
- ByteUnits - Parse, format, and convert byte units in binary and metric systems
- PHP Units of Measure - Unit conversion library
- PHP Conversion - Another unit conversion library
- LibPhoneNumber for PHP - PHP port of Google's phone number handling library
- ivanakimov/hashids.php - Generate unique strings from integers (e.g., hide real IDs via encryption/decryption)
- Particle - PHP ID Generator | Twitter Snowflake ID implementation
- nanoid-php - Compact unique ID generator
- vinkla/laravel-hashids - Hash ID generator to hide numeric IDs (based on Hashids)
Libraries for filtering and validating data
- ircmaxell/filterus - Simple PHP filtering library
- Respect/Validation - Simple validation library
- vlucas/valitron - Another data validation library
- cakephp/validation - Another data validation library
- illuminate/validation - Laravel validation library
- php-readability - Content analysis algorithm
- codeguy/Upload - File upload handling and validation library
- rdohms/DMS-Filter - Annotation-based filtering library
- romaricdrigon/MetaYaml - Schema validation library supporting YAML, JSON, XML
- ronanguilloux/IsoCodes - Validation library for various ISO and ZIP codes
- aura/filter - Aura data validation component
- symfony/validator - Symfony data validation component
- dwightwatson/validating - Automatic validation on Eloquent model save via Trait
- Propaganistas/Laravel-Phone - Phone and mobile number validation support
- felixkiss/uniquewith-validator - Add uniqueness validation between fields in form rules
- cviebrock/image-validator - Image dimension validation
Libraries and web frameworks for developing RESTful APIs
- dingo/api - Complete solution for building API servers
- Apigility - API builder using Zend Framework
- Hateoas - HATEOAS REST web service library
- HAL - Hypertext Application Language (HAL) builder library
- Negotiation - Content negotiation library
- Drest - Library for exposing Doctrine entities as REST resources
- Restler - Lightweight framework for exposing PHP methods as RESTful web APIs
- thephpleague/fractal - [Best Practice] Unified data response handling
- api-problem - Simple implementation of api-problem specification
- graphql-php - Application-layer query language library
- GraphQL - Another application-layer query language library
- GrahamCampbell/Laravel-Throttle - Rate limiting tool
Libraries for caching data
- symfony/cache - Symfony cache component following PSR-6
- Alternative PHP Cache (APC) - Open-source opcode cache for PHP
- Doctrine Cache - Caching library
- Zend Cache - Another caching library
- Cake Cache - Caching library
- Stash - Another caching library
- CacheTool - Command-line tool for clearing APC/opcode cache
- PhpFastCache - PHP caching library
- desarrolla2/Cache - Caching library with multiple adapters
- laruence/yac - Shared memory lock-free content cache for PHP
- liexusong/pcache - PHP local cache extension
- Shies/PHP7-buffer - High-performance local cache extension for PHP7
Libraries implementing data structures and storage techniques
- Illuminate\Support\Collection - Laravel's fluent collection for manipulating array data
- Collections - Collection library extracted from Laravel
- Ardent - Data structure library
- Cake Collection - Simple collection library
- Collections - Collection abstraction library
- Fractal - Library for transforming complex data structures to JSON output
- PHP Collections - Simple collection library
- Serializer - Serialization and deserialization library
- Zend Serializer - Another serialization/deserialization library
- PHP Object Storage - Object storage library
- Totem - Library for managing and creating data change sets
- PINQ - Real-time LINQ library for PHP
- JsonMapper - Library for mapping nested JSON structures to PHP classes
- php-jsonq - PHP query builder for JSON
- DeepCopy - Create deep copies (clones) of objects
Libraries for notifications
- filp/nod - Notification library
- wrep/notificato - Push message handling library
- Ph3nol/NotificationPusher - Standalone device push notification library
- namshi/notificator - Lightweight notification library
- davibennun/laravel-push-notification - Push notification tool for apps (supports APNS and GCM)
- edvinaskrucas/notification - Page message notification component
Libraries for project deployment
- tamagokun/pomander - PHP application deployment tool
- rocketeers/rocketeer - Fast and simple PHP deployer
- laravel/envoy - Official Laravel simple deployment tool
- aerialls/Plum - Deployment library
- deployphp/deployer - Deployment tool
- meolu/walle-web - Open-source web code deployment management system
- Piplin - Free open-source CI/CD system for automated build, test, and deployment
Libraries for internationalization (I18n) and localization (L10n)
- auraphp/Aura.Intl
- cakephp/i18n - Translation and localization messages
- symfony/translation
- illuminate/translation
- Gettext - PHP library to collect and manipulate gettext (.po, .mo, .php, .json, etc)
- zend/i18n
- mcamara/laravel-localization - Enhanced Laravel localization
- dimsav/laravel-translatable - Multilingual database translation solution
- webpatser/laravel-countries - World countries data (including capitals, currencies, etc.)
Libraries/SDKs for accessing third-party APIs
- mailgun-php - Official Mailgun SDK for PHP
- wechat - Simplify WeChat development
- Qiniu/sdk - Qiniu Resource Storage SDK for PHP
- Qiniu/qshell - Command-line tool for testing and using Qiniu APIs
- tencentyun/wafer - Quickly build scalable WeChat mini-programs
- maxmind/GeoIP2-php - MaxMind GeoIP2 location service
- PingPlusPlus/pingpp-php - Ping++ aggregated payment SDK
- mgp25/Instagram-API - Instagram private API
- aws/aws-sdk-php - AWS services developer toolkit
- bugsnag/bugsnag-laravel - Bugsnag integration package
- maknz/slack - Slack service integration
- lyrixx/twitter-sdk - Fully tested Twitter SDK
- thujohn/twitter - Twitter API support
- overtrue/weather - PHP weather component based on Gaode open platform
- aliyun/aliyun-oss-php-sdk - Alibaba Cloud Object Storage
- aliyun/openapi-sdk-php - Alibaba Cloud SDK for PHP
- overtrue/laravel-filesystem-qiniu - Laravel filesystem Qiniu
- jacobcyl/Aliyun-oss-storage - Alibaba Cloud OSS Laravel extension
- overtrue/easy-sms - SMS sending component supporting multiple providers
- mingyoung/dingtalk - DingTalk SDK
- wowiwj/ding-notice - DingTalk robot message sending Laravel package
Libraries for building PHP extensions
- Zephir - Compiled language between PHP and C++ for developing PHP extensions
- PHP CPP - C++ library for developing PHP extensions
- PHP-X - C++ wrapper for Zend API
Tools for installing and managing PHP
- HomeBrew - macOS package manager
- HomeBrew PHP - PHP formulas for HomeBrew
- PHP OSX - PHP installer for macOS
- PHP Brew - PHP version manager and installer
- PHP Env - Another PHP version tool
- PHP Switch - Another PHP version tool
- PHP Build - Another PHP version tool
- VirtPHP - Tool for creating and managing isolated PHP environments
Software and tools for creating sandbox development environments
- Docker - Open-source application container engine
- Vagrant - Lightweight tool for creating development environments
- Ansible - Simple orchestration framework
- Puppet - Server automation framework and application
- PuPHPet - Tool for building PHP development VMs
- Protobox - Another tool for building PHP development VMs
- Phansible - Another tool for building PHP development VMs
- centstead - Laravel local development environment based on Vagrant and Homestead
- Devilbox - Modern Dockerized LAMP/MEAN stack alternative to XAMPP
- Homestead - Vagrant-based PHP development environment
- Laradock - Docker-based PHP development environment
Alternative PHP virtual machines
IDEs supporting PHP
Web-based applications and tools
- 3V4L - Online PHP shell
- DBV - Database version control application
- PHP Queue - Queue management backend
- MailCatcher - Catch and view emails
- Cachet - Open-source status page system (like status.github.com)
- phpRedisAdmin - Redis management tool
- phpPgAdmin - PostgreSQL management tool
- phpMyAdmin - MySQL management tool
- rockmongo - MongoDB management tool
- Grav - Powerful Flat-File CMS
- Piwik - Web analytics
- YOURLS - Short URL generator system
- Nextcloud server - Open-source private cloud system
- magento2 - Open-source PHP e-commerce system
- laravel-admin - Laravel-based admin framework
- Crinsane/LaravelShoppingcart - Simple shopping cart implementation
- CachetHQ/Cachet - Open-source status page system with API
- flarum/flarum - Elegant lightweight forum
- roots/bedrock - WordPress deployment tool
- monicahq/monica - Personal relationship management CRM
Infrastructure for PHP applications and services
- appserver.io - Multi-threaded PHP application server
- php-pm - Process manager, booster, and load balancer for PHP applications
For read-write separation, sharding, etc.
- kingshard - Kingsoft open-source database proxy
- heisenberg - Baidu open-source database proxy
- Oceanus - 58.com open-source database proxy
- Atlas - 360 open-source database proxy
- DBProxy - Meituan based on Atlas database proxy
- Mycat
- TiDB - Distributed database
Remote procedure call frameworks
- apache/thrift - Apache Thrift
- grpc/grpc - Google's open-source framework
- protobuf
- alibaba/dubbo - Alibaba open-source RPC framework
- TarsCloud/Tars - Tencent high-performance RPC framework using Tars protocol
- weibocom/motan - Weibo lightweight RPC framework
- dangdangdotcom/dubbox - Dangdang maintained dubbox
- baidu/sofa-pbrpc - Baidu open-source sofa-pbrpc
- laruence/yar - Lightweight concurrent RPC framework for PHP & C
- Hprose - High-performance cross-language RPC
- Others
- Swoole
- Workerman
- Gearman - Task distribution system
- phpdaemon
- ReactPHP
- amphp/amp - Non-blocking concurrency framework for PHP
- async - Easily run code asynchronously
- kraken-php - Asynchronous & fault-tolerant PHP framework for distributed applications
- recoilphp/recoil - Asynchronous coroutines for PHP 7
- Hoa\Ruler - Hoa project rules engine
- Ruler - Simple stateless rule engine
- Rules - Simple PHP rules engine
Useful libraries and tools not fitting above categories
- overtrue/pinyin - Chinese to Pinyin library
- jifei/Pinyin - Chinese to Pinyin library
- class.upload.php - File upload handling class
- php-paginator - Pagination handling class
- Anahkiasen/underscore-php - Underscore.js-like PHP syntax support
- Flexihash - Consistent hashing library
- Eden - Rapid development library with autoloading, events, caching, templating, i18n, database, web services, payment gateways, and cloud services
- html-parser - HTML parsing tool
- PHPCrawl - PHP crawler framework
- Tig - Git browser in command line
- copywriting-correct - Chinese/English copywriting typography corrector
- PHP-ML - PHP machine learning library
- BotMan - Chatbot library
- barryvdh/laravel-ide-helper - IDE helper for Laravel development
- davejamesmiller/laravel-breadcrumbs - Breadcrumb tool
- laracasts/PHP-Vars-To-Js-Transformer - Transform PHP variables to JavaScript
- Laravelium/laravel-sitemap - Sitemap generator
- yajra/laravel-datatables - Backend support for jQuery DataTables
- formers/former - Powerful form builder
- Laravelium/laravel-feed - Feed generator