Collect and sort some common PHP class libraries. collect and sort out some common PHP class libraries, resources, and skills so that you can quickly find what you need at work...
- The content in this list includes awesome-php translation, developer weekly and personal accumulation.
- A list of front-end components recommended by awesome-frontend
Learning Resources
PHP-related communities, blogs, websites, articles, books, videos, and other resources with reference value
Dependency Management)
Packages and frameworks for dependency management
- Composer/Packagist-a package and dependency manager.
- Composer Installers-a multi-framework Composer Library installer
- Pickle-PHP extension installer
- Melody-A tool to build one file Composer scripts.
Framework (Frameworks)
Web development framework
- Symfony2-framework composed of independent components (SP2)
- Zend Framework 2-a Framework composed of independent components (ZF2)
- Laravel 5-simple and elegant PHP Web Development Framework (L5)
- Aura PHP-framework of independent components
- Yii2-High-Performance PHP framework for developing large Web applications
- Nette-a framework composed of independent components
- PPI Framework 2-an interactive Framework
- CakePHP-an efficient application development framework (CP)
- Phalcon-a C extension framework
- Yaf-bird brother's C extension framework
Component)
- Aura Components-a PHP5.4 component package
- Hoa Project-a collection of PHP components
Micro Framework)
Micro-Framework and routing
- Silex-miniature framework based on Symphony2 components
- Silex Skeleton-Silex project framework
- Silex Web Profiler-Web Debugging toolbar for Silex
- Slim-another simple micro-frame
- Slim Skeleton-frame for Slim
- Slim View-custom visual gallery of Slim
- Custom Middleware set of Slim Middleware-Slim
- Based on SlimMVC-Skeleton-Slim, MVC and some components are implemented.
- Bullet PHP-microframework for building REST APIs
- Lumen-Laravel-based micro-framework
- Proton-a micro PHP Framework
Router)
- Fast Route-an efficient Route Library
- Route-Route library based on Fast Route
- Pux-another efficient route Library
- Klein-a flexible routing Library
Templating)
Templates and lexical analysis libraries and tools
- Twig-a comprehensive template language
- Twig Cache Extension-template segment Cache library for Twig
- Mustache-the Mustache template language implemented by PHP
- Phly Mustache-another Mustache template language implemented by PHP
- HAML template language implemented by MtHaml-PHP
- TAL template language implemented by PHPTAL-PHP
- Plates-an original PHP template library
- Lex-a lightweight template parser
Static Site Generators)
A preprocessing tool for generating Web page content
- Sculpin-tools for converting Markdown and Twig to static HTML
- Phrozn-another tool for converting Textile, Markdown, and Twig into HTML
HTTP
Used for HTTP and website crawling
- Guzzle-a complete HTTP client
- Buzz-another HTTP client
- Requests-a simple HTTP library
- HTTPFul-a chained HTTP client
- Goutte-a simple Web capture
- Php vcr-a library for recording and playback HTTP requests
Middleware (Middlewares)
Middleware used to build the application class library
URL
URL-resolved Library
- Purl-a URL operation Library
- PHP Domain Parser-a local suffix Parser
- Url-a simple URL operation Library
Email)
Library used to send and parse emails
- SwiftMailer-A mail program solution
- PHPMailer-solution for another mail program
- Fetch-an IMAP Library
- Email Reply Parser-an Email Reply Parser library
- Stampie-about the mail service library, such as SendGrid, PostMark, MailGun, and Mandrill
- CssToInlineStyles-an inline CSS library in the mail template
- Email Validator-a small mailbox verification Library
File operations (Files)
About file processing and MIME type check
- Gaufrette-abstraction layer of a file stream
- Flysystem-abstraction layer of another file stream
- Canal-a library that checks the Internet media type
- Apache MIME Types-a library for parsing Apache MIME Types
- Ferret-a MIME detection Library
- Hoa Mime-another MIME detection Library
- Lurker-a resource tracking database
- PHP File Locator-a library for locating files in large projects
- PHP FFmpeg-a library used for FFmpeg video packaging
- CSV-a CSV data operation Library
Stream)
Stream processing database
- Streamer-a simple object-oriented stream packaging Library
Dependency Injection)
Libraries that implement dependency injection design patterns
- Pimple-a small dependency injection container
- Auryn-another small dependency injection container
- Container-another flexible dependency injection Container
- Php di-a dependency injection implemented using annotation
- Acclimate-general interface for Dependency Injection containers and service locators
- Symfony DI-a dependency injection component (SF2)
Image (Imagery)
Image processing library
- Imagine-an image processing database
- PHP Image Workshop-another Image processing library
- Intervention Image-it is also an Image processing library
- GIF Frame Extractor-a library for extracting GIF animation Frame information
- GIF Creator-create a GIF animation library from multiple images
- Image With Text-library for embedding Text in images
- Color Extractor-library for extracting colors from images
- Glide-an on-demand Image processing library
- Image Optimizer-a library for optimizing images
Test)
Test Code Library and the library that generates test data
- PHPUnit-a unit test framework
- DBUnit-PHPUnit code test Library
- ParaTest-PHPUnit parallel test Library
- PHPSpec-standardized unit test Library
- Codeception-a full-stack testing framework
- Simulation Framework of AspectMock-PHPUnit/Codeception
- Atoum-a simple test Library
- Mockery-a simulated object library for testing
- Phake-another simulated object library for testing
- Prophecy-a powerful simulation framework
- Faker-a pseudo-data generation database
- Samsui-another pseudo data generation Library
- Alice-database used to generate complex data
- Behat-a behavior-driven development (BDD) testing framework
- Pho-another behavior-driven development test framework
- Mink-Web acceptance test
- HTTP Mock-a library that simulates HTTP requests in unit tests
- VFS Stream-a virtual file system Stream package for testing
- VFS-another virtual file system for testing
- Locust-a modern load testing library developed by Python
- Peridot-an event-driven testing framework
Continuous Integration)
Continuous integration of libraries and applications
- Travis CI-a continuous integration platform
- SemaphoreCI-a continuous integration platform for open-source programs and private projects
- PHPCI-an open source continuous integration platform for PHP
- Sismo-a continuous test server Library
- Jenkins-continuous integration platform supported by PHP
- Docker-supported continuous integration client developed by JoliCi-PHP
Documentation)
Library for generating project documents
- Sami-an API document generator
- APIGen-another API document builder
- PHP generator entor 2-document builder
- PhpDox-document builder for a PHP project (not just API documentation)
Security)
Databases used to generate secure random numbers, encrypt data, and scan vulnerabilities
- HTML Purifier-a standard HTML filter
- RandomLib-library for generating random numbers and random strings
- True Random-database that uses www.random.org to generate Random numbers
- SecurityMultiTool-a PHP Security Library
- PHPSecLib-a pure PHP secure communication Library
- TCrypto-a simple key-value encryption repository
- Php ids-a structured PHP Security layer
- Php ssh-object-oriented SSH packaging Library
- IniScan-a security tool for scanning php ini files
- SensioLabs Security Check-a Web tool that checks Composer dependencies based on Security recommendations
- Zed-integrated penetration testing tool for Web applications
Password (Passwords)
Databases and tools for processing and storing passwords
- Password Compat-a compatible library for the new PHP5.5 Password function
- Phpass-a portable password hash framework
- PHP Password Lib-a library used to generate and verify passwords
- Password Policy-a PHP and JavaScript code repository
- Password Validator-database used to verify and upgrade the Password hash
- Zxcvbn PHP-a PHP display password strength estimation library based on Zxcvbn JS
- GenPhrase-a library for generating secure random passwords
Code Analysis)
Tools used to analyze, parse, and operate code libraries
- PHP Parser-a PHP Parser written in PHP
- PHPPHP-a PHP virtual machine implemented by PHP
- PHPSandbox-PHP sandbox environment
- Dissect-a collection of lexical and syntax analysis tools
- PHP Mess Detector-a library that scans code bugs, minor code, and unused parameters
- PHP Code Sniffer-a library for detecting standard conflicts between PHP, CSS, and JS Code
- PHPCPD-a library for detecting, copying, and pasting code
- PHP Analyser-a library for analyzing errors in PHP code
- Php cs Fixer-a standard code library
- PHP Manipulator-library used to analyze and modify PHP source code
- PHP Metrics-a static measurement Library
- PHP Refactoring Browser-a command line tool used to refactor PHP code
- UBench-a simple small benchmark test Library
- Athletic-a Annotation-based benchmark test Library
- Mondrian-use a graph-based code analysis tool
- Scrutinizer-Web tool for checking PHP code
- PHPLOC-a tool to quickly evaluate the PHP project size
- PHPCheckstyle-a tool to help comply with specific code rules
- PhpDependencyAnalysis-a tool for creating customizable dependency charts
- Code Climate-automated code review
Structure)
Database on design patterns, programming specifications, and code organization methods
- PHP Option-a PHP Option Library
- Ruler-a simple stateless engine for generating environment rules
- Finite-a simple PHP Finite state machine
- Compose-a function combo Library
- Monad PHP-a simple Monad Library
- Patchwork-a function library that redefines a user
- Galapagos-evolution of language conversion
- Design Patterns PHP-a PHP-based Design mode instance Library
- Functional PHP-a Functional programming library
- Lib Accessor-a simplified Library
- Iter-a library that uses generators to provide iteration primitives
Debugging and Profiling)
Libraries and tools for code debugging
- XDebug-a PHP debugging and analysis tool
- PHP Debug Bar-a debugging toolbar
- PHP Console-Web Debugging Console
- Barbushin PHP Console-a Web Debugging control tool using Google Chrome
- PHPDBG-an interactive PHP debugger
- Tracy-a simple error detection, logging, and time measurement Library
- Z-Ray-a debugging and performance analysis tool
- XHprof-Facebook's open-source PHP performance evaluation tool
- Blackfire. io-a low-cost code probe
- Kint-a debugging and performance analysis tool
Build Tools)
Project building and automation tools
- Go-a simple PHP build tool
- Bob-a simple project automation tool
- Phake-a PHP Clone Library
- Box-tools used to build PHAR files
- Phing-build a system based on Apache Ant's PHP project
Task Runners)
Library for automatically running tasks
- Task-the pure PHP Task runner based on Grunt and Gulp
- Robo-object-oriented PHP task runner
- Bldr-PHP task runner built on the Symfony component
Navigation)
Tools for building navigation structures
- KnpMenu-a menu Library
- Cartographer-map generation library for one site
Resource Management (Asset Management)
Tools used to manage, compress, and minimize website resources
- Assetic-a resource management pipeline Library
- Pipe-another pipeline library for resource management
- Munee-a resource optimization library
- JShrink-a JavaScript compression library
- Puli-a database that detects the absolute path of a resource
Geolocation)
Database that uses the latitude and longitude encoding address
- GeoCoder-a geocode Library
- GeoTools-a database related to a geographic tool
- PHPGeo-a simple geographic database
- GeoJSON-implementation of a GeoJSON
Date and Time)
Databases that process dates and times
- Carbon-a simple date and time API extension
- ExpressiveDate-another date and time API extension
- CalendR-a calendar-managed Library
Event)
Library implemented by event-driven or non-blocking event loops
- React-an event-driven non-blocking I/O library
- Rx. PHP-a response Extension Library
- Ratchet-a Web socket Library
- Hoa WebSocket-another Web socket Library
- Elephant. io-another Web socket Library
- Hoa EventSource-an event Source Library
- Evenement-an event scheduling Library
- Event-Event package for your app and/or domain.
- Cake Event-an Event scheduling class library
- Broadway-one event source and CQRS database
Log (Logging)
Library used to generate and process log files
- Monolog-a comprehensive log class library
- KLogger-an easy-to-use PSR-3 log class
- Analog-a micro log package with opportunity closure
E-commerce)
Databases and applications used to pay for and build online e-commerce stores
- OmniPay-a multi-Gateway payment processing framework
- Payum-an abstract library for payment
- Sylius-an open-source e-commerce solution
- Thelia-another open-source e-commerce solution
- The Fowler Money mode implemented by Money-PHP
- Sebastian Money-a database for processing currency values
- Swap-one exchange rate Database
PDF
Libraries and software for processing PDF files
- Snappy-a PDF and image generation Library
- WKHTMLToPDF-a tool for converting HTML to PDF
- PHPPdf-a library for converting XML into PDF and images
Office
Processing libraries for various documents in the Office set
- PHPWord-database for processing word documents
- PHPExcel-database for processing Excel documents
- PHPPowerPoint-database for processing PPT slides
- ExcelAnt-Excel Document Library
Database)
Database interaction database using object link ing (ORM) or data ing technology
- Doctrine-a complete DBAL and ORM
- Doctrine Extensions-an extension set of Doctrine behavior
- Propel-a quick ORM for migrating and querying libraries
- Eloquent-Laravel 5 ORM (L5)
- Baum-a nested set of Eloquent
- Spot2-MySQL ORM er
- RedBean-a lightweight and easy-to-configure ORM
- Pomm-an object model manager for PostgreSQL
- ProxyManager-a collection of tools used for data ING to generate proxy objects
- Cake ORM-object relational CER, which implements the use of data ing mode (CP)
Migration (Migrations)
Databases used to manage database modes and migrate data
- PHPMig-a migration management Library
- Phinx-a database migration management database
- Migrations-another migration management database
- Doctrine Migrations-migration database for Doctrine
Non-relational database service (NoSQL)
Process the NoSQL back-end database
- MongoQB-query and build a MongoDB database
- Monga-an abstract MongoDB database
- Predis-a fully functional Redis database
Queue)
Databases that process events and task queues
- Pheanstalk-a Beanstalkd client library
- Php amqp-a pure php amqp Library
- Thumper-a RabbitMQ mode Library
- Bernard-a multi-backend abstract Library
Search)
Database and software related to data indexing and query execution
- ElasticSearch PHP-the official client library for ElasticSearch.
- Elastica-client library of another ElasticSearch
- Solarium-Solr client library.
- SphinxQL query builder-sphsf-search engine query Library
Command Line)
Build a command line tool library
- Boris-a micro PHP REPL
- PsySH-another PHP REPL
- Pecan-an event-driven, non-blocking shell
- GetOpt-select a parser for a command line
- OptParse-select parser for another command line
- Commando-a simple command line selection parser
- GetOptionKit-also a command line parser
- Cron Expression-database used to calculate the cron running date
- ShellWrap-a simple command line packaging Library
- Hoa Console-another command line Library
- Shunt-a command line Library running concurrently on multiple remote machines
- Cilex-build a small framework of the command line tool
- CLImate-Library of output colors and special formats
Authentication and Authorization)
Databases that implement the authentication mode
- Sentinel-an authentication and authorization framework
- Sentinel Social-a library for Social network authentication
- Opauth-a multi-supply authentication framework
- Oau2server-an oau22authentication Server, Resource Server, and client library
- Oau2server-implementation of an oau2server
- PHP oAuthLib-another OAuth Library
- TwitterOAuth-a Twitter OAuth Library
- TwitterSDK-a fully tested Twitter SDK
- Hawk-a Hawk HTTP authentication Library
- HybridAuth-an open-source social login Library
- Lock-an Access Control Lists (ACL) system Library.
- OAuth 1.0 Client-an OAuth 1.0 Client library.
- OAuth 2.0 Client-an OAuth 2.0 Client library.
Markup)
Process the marked database
- Decoda-a lightweight tag parsing library
- PHP Markdown-Markdown parser
- CommonMark PHP-a Markdown parser that supports CommonMark spec.
- Parsedown-a Markdown parser
- Ciconia-a Markdown parser that supports the Github style
- Cebe Markdown-a fast and scalable Markdown parser
- HTML5 PHP-a library for HTML5 parsing and serialization
- Emoji-a simple class library for processing emoji
String (Strings)
Database for parsing and manipulating strings
- ANSI to HTML5-a library that converts ANSI to HTML5
- Patchwork UTF-8-portable library for processing UTF-8 format strings
- Hoa String-String library in another UTF-8 format
- Stringy-a multi-byte string operating Library
- Color Jizz-a library for processing and converting colors
- UUID-database for UIDs generation
- Slugify-a library that converts strings to slug format
- Urlify-a Django URLify. js PHP port
- Text-a Text processing library
- SQL Formatter-a library used to format SQL statements
- UA Parser-a database that parses UA (User Agent) strings
- Device Detector-another database that parses the UA (User Agent) string
- Mobile-Detect-a lightweight library for detecting Mobile devices (including desktop devices)
Number (Numbers)
Database for processing numbers
- Numbers PHP-a library for processing Numbers
- Math-database for processing large numbers
- ByteUnits-a library for parsing, formatting, and converting byte units in binary and measurement systems
- PHP Units of Measure-a library for converting between measurement Units
- PHP Conversion-another library for Conversion between measurement units
- LibPhoneNumber for PHP-implemented Google phone number processing system Library
Filtering ang Validation)
Database used to filter and verify data
- Filterus-a simple PHP filter Library
- Respect Validate-a simple validation Library
- Valitron-another data verification database
- Cake Validation-another data Validation database
- Upload-a library for file Upload and verification
- DMS Filter-a tag-based Filter Library
- MetaYaml-a schema validation library supporting YAML, JSON, and XML
- ISO-codes-verify libraries with different ISO and ZIP codes
REST and API
Library and Web framework for developing restful APIs
- Apigility-an API builder built using Zend Framework2
- Hateoas-a hateoas rest web service Library
- HAL-a hyper text Application Language (HAL) build Library
- Negotiation-a content Negotiation Library
- Drest-a database that presents Doctrine entities as REST resource nodes
- Restler-a lightweight framework that shows PHP methods as RESTful web APIs
Cache)
Database of cached data
- Alternative PHP Cache (APC)-PHP open source operation code Cache
- Doctrine Cache-A Cache Library.
- Zend Cache-another Cache Library
- Cake Cache-a library used for caching
- Stash-another cache Library
- CacheTool-a command line tool for clearing APC/opcode cache
Data Structure and Storage)
Database that implements data structure and storage technology
- Ardent-a data structure Library
- PHP Collections-a simple collection Library
- Serializer-database used for serialization and deserialization of data
- Zend Serializer-another database for serialization and deserialization
- PHP Object Storage-a library for Object Storage
- Fractal-a database that converts complex data structures to JSON output
- Totem-a database for managing and creating data modification sets
- PINQ-PHP real-time Linq Library
- JsonMapper-a library that maps embedded JSON structures to PHP classes
- Cake Collection-a simple Collection Library
Notifications)
Notification Library
- Nod-a notification Library
- Notificato-a library for processing push messages
- Notification Pusher-independent library for device push notifications
- Notificator-a lightweight notification Library
Deployment)
Library used for project deployment
- Pomander-a PHP application deployment tool
- Rocketeer-PHP quick and simple deployer
- Envoy-tools for running SSH tasks using PHP
- Plum-a deployment Library
- Deployer-a deployment tool
Internationalisation and Localisation)
Libraries for international (I18n) and localization (L10n)
- Aura Intl
- Cake I18n-translation and localization messages
Third-Party API (Third Party APIs)
Access third-party API Library
Extensions)
Help build PHP extended libraries
- Zephir-a compilation language used to develop PHP extensions between PHP and C ++
- Php cpp-a C ++ library used to develop PHP extensions
Others (Miscellaneous)
Useful class libraries and tools not classified above
From: https://github.com/JingwenTian/awesome-php