awesome-php中英文资源整理(同步更新)

看到此文,是否觉得体内洪荒之力爆发,饥渴难耐想吐槽
本文为转载文章,若有侵权或违规行为,请联系我,会及时处理相关内容。

支付宝微  信

中文版

收集整理一些常用的PHP类库, 资源以及技巧. 以便在工作中迅速的查找所需...


  • 这个列表中的内容有来自 awesome-php 的翻译, 有来自开发者周刊以及个人的积累等.
  • 一个前端组件的列表 awesome-frontend 推荐

学习资源

PHP相关的有参考价值的社区,博客,网站,文章,书籍,视频等资源


依赖管理( Dependency Management )

用于依赖管理的包和框架

框架( Frameworks )

Web开发框架

  • Symfony2 - 由独立组件构成的框架(SP2)
  • Zend Framework 2 - 同样是由独立组件构成的框架(ZF2)
  • Laravel 5 - 简洁优雅的PHP Web开发框架(L5)
  • Aura PHP - 独立组件的框架
  • Yii2 - 用于开发大型Web应用的高性能PHP框架
  • Nette - 同样是由独立组件构成的框架
  • PPI Framework 2 - 一个交互性的框架
  • CakePHP - 一个高效的应用开发框架(CP)
  • Phalcon - 一个作为C扩展的框架
  • Yaf - 鸟哥的C扩展的框架
    • swoole-yaf - 基于 Swoole 及 Yaf 的开发框架
    • yaf - 另一个基于 Swoole 及 Yaf 的开发框架
  • Zan PHP Framework - 有赞开源的 PHP 框架

组件( Components )

配置( Configuration )

加载配置文件的类库和扩展

  • Yaconf - 一个高性能的配置管理扩展
  • config - 一个轻量级的配置加载器, 支持 PHP, INI, XML, JSON, YAML files
  • Zend-config

微框架( Micro Frameworks )

微型框架和路由

路由( Routers )

  • Fast Route - 一个高效路由库
  • Route - 基于Fast Route的路由库
  • Pux - 另一个高效的路由库
  • Klein - 一个灵活的路由库
  • Macaw - 一个简单的 PHP 路由器,超级精简、快速而且很性感。

模板引擎( Templating )

模板和词法分析的库与工具

  • Twig - 一种综合的模板语言
  • Twig Cache Extension - 用于Twig的模板片段缓存库
  • Mustache - PHP实现的Mustache模板语言
  • Phly Mustache - 另一个PHP实现的Mustache模板语言
  • MtHaml - PHP实现的HAML模板语言
  • PHPTAL - PHP实现的TAL模板语言
  • Plates - 一个原始的PHP模板库
  • Lex - 一个轻量级模板解析器

静态站生成器( Static Site Generators )

生成Web页面内容的预处理工具

  • Sculpin - 将Markdown和Twig转换为静态HTML的工具
  • Phrozn - 另一款ithub将Textile、Markdown和Twig转为HTML的工具
  • Spress
  • Couscous - 将Markdown 文档转换成 HTML 发布到Github Page 的工具

HTTP

用于HTTP和抓取网站的库

中间件( Middlewares )

用于构建应用的类库的中间件

URL

解析URL的库

邮件( Email )

用于发送和解析Email的库

文件操作( Files )

关于文件处理和MIME类型检查

流( Stream )

处理流的库

  • Streamer - 一个简单的面向对象流包装库

依赖注入( Dependency Injection )

实现依赖注入设计模式的库

图像( Imagery )

处理图像的库

测试( Testing )

测试代码库和生成测试数据的库

  • PHPUnit - 一个单元测试框架
  • DBUnit - PHPUnit的代码测试库
  • ParaTest - PHPUnit的并行测试库
  • PHPSpec - 根据规范的单元测试库
  • Codeception - 一个全栈测试框架
  • AspectMock - PHPUnit/Codeception的模拟框架
  • Atoum - 一个简单的测试库
  • Mockery - 一个用于测试的模拟对象库
  • Phake - 另一个用于测试的模拟对象库
  • Prophecy - 一个强大的模拟框架
  • Faker - 一个伪数据生成库
  • Samsui - 另一个伪数据生成库
  • Alice - 用于生成复杂数据的库
  • Behat - 一个行为驱动开发(BDD)的测试框架
  • Pho - 另一个行为驱动开发的测试框架
  • Mink - Web验收测试
  • HTTP Mock - 一个在单元测试中模拟HTTP请求的库
  • VFS Stream - 一个用于测试的虚拟文件系统流包装
  • VFS - 另一个用于测试的虚拟文件系统
  • Locust - 一个Python开发的现代负载测试库
  • Peridot - 一个事件驱动的测试框架

持续集成( Continuous Integration )

持续集成的库和应用

  • Travis CI - 一个持续集成的平台
  • SemaphoreCI - 一个给开源程序和私有项目的持续集成平台
  • PHPCI - 一个PHP的开源持续集成平台
  • Sismo - 一个持续的测试服务器库
  • Jenkins - PHP支持的持续集成平台
  • JoliCi - PHP开发的由Docker支持的持续集成客户端

文档( Documentation )

生成项目文档的库

  • Sami - 一个API文档生成器
  • APIGen - 另一个API文档生成器
  • PHP Documentor 2 - 文档生成器
  • phpDox - 一个PHP项目的文档生成器(不仅仅是API文档)

安全( Security )

用于生成安全的随机数、加密数据、扫描漏洞, 令牌的库

密码( Passwords )

处理和存储密码的库和工具

代码分析( Code Analysis )

用于分析、解析和操作代码库的工具

结构( Architectural )

有关于设计模式,编程规范以及代码组织方式的库

调试和性能( Debugging and Profiling )

调试代码的库和工具

  • xDebug - 一个PHP的调试和分析工具
  • whoops
  • PHP Debug Bar - 一个调试工具条
  • PHP Console - Web调试控制台
  • Barbushin PHP Console - 一个使用Google Chrome的Web调试控制工具
  • PHPDBG - 一个交互性的PHP调试器
  • Tracy - 一个简单的错误检测、日志和时间测量库
  • Z-Ray - 一个调试和性能分析的工具
  • xHprof - Facebook开源的PHP性能评测工具
    • xhprof.io - 实现保存xhprof数据以及展示数据的UI
    • xhgui - 另一个保存xhprof数据以及展示数据的UI
  • Blackfire.io - 一个低开销的代码探查器
  • Kint - 一个调试和性能分析的工具

构建工具( Build Tools )

项目构建和自动化工具

  • Go - 一个简单的PHP构建工具
  • Bob - 一个简单的项目自动化工具
  • Phake - 一个PHP克隆库
  • Box - 用来构建PHAR文件的工具
  • Phing - 依据Apache Ant的PHP项目构建系统

任务运行器( Task Runners )

自动运行任务的库

  • Task - 依据Grunt和Gulp的纯PHP任务运行器
  • Robo - 面向对象的PHP任务运行器
  • Bldr - 构建在Symfony组件上的PHP任务运行器

导航( Navigation )

构建导航结构的工具

资源管理( Asset Management )

用于管理、压缩和最小化网站资源的工具

  • Assetic - 一个资源管理的管道库
  • Pipe - 另一个资源管理的管道库
  • Munee - 一个资源优化库
  • JShrink - 一个JavaScript的压缩库
  • Puli - 一个检测资源绝对路径的库

地理定位( Geolocation )

使用经纬度编码地址的库

日期与时间( Date and Time )

处理日期和时间的库

事件( Event )

事件驱动或非阻塞事件循环实现的库

日志( Logging )

用于生成和处理日志文件的库

  • Monolog - 一个综合的日志类库
  • KLogger - 一个易于使用的PSR-3日志类
  • Analog - 一个机遇闭包的微型日志包
  • SeasLog - 一个高效的日志扩展

电子商务( E-commerce )

用于支付和构建在线电子商务商店的库和应用

  • OmniPay - 一个多网关支付处理的框架
  • Payum - 一个用于支付的抽象库
  • Sylius - 一个开源的电子商务解决方案
  • Thelia - 另一个开源的电子商务解决方案
  • Money - PHP实现的Fowler金钱模式
  • Sebastian Money - 一个处理货币价值的库
  • Swap - 一个汇率库

PDF

处理PDF文件的库和软件

  • Snappy - 一个PDF和图像的生成库
  • WKHTMLToPDF - 一个将HTML转换为PDF的工具
  • PHPPdf - 一个将XML转化为PDF和图片的库

Office

Office套装的各种文档的处理库

数据库( Database )

使用对象关系映射(ORM)或数据映射技术的数据库交互库

  • Doctrine - 一个完整的DBAL和ORM
  • Doctrine Extensions - 一个Doctrine行为的扩展集合
  • Propel - 一个快速的ORM,迁移和查询库
  • Eloquent - Laravel 5 ORM(L5)
  • LazyRecord - 一个快速的ORM
  • Baum - 一个Eloquent的嵌套集合
  • Spot2 - MySQL的ORM映射器
  • RedBean - 一个轻量级、易配置的ORM
  • Pomm - 用于PostgreSQL的一个对象模型管理器
  • ProxyManager - 用于数据映射生成代理对象的工具集合
  • Cake ORM - 对象关系映射器, 实现了使用数据映射模式(CP)
  • Medoo - 一个轻量级的加速开发的ORM

迁移( Migrations )

用于管理数据库模式和迁移的库

非关系型数据库( NoSQL )

处理NoSQL后端的库

队列( Queue )

处理事件和任务队列的库

搜索( Search )

在数据中建立索引和执行查询相关的库和软件

命令行( Command Line )

构建命令行工具的库

  • symfony/console - Symfony命令行工作组件
  • Boris - 一个微型的PHP REPL
  • PsySH - 另一个PHP REPL
  • Pecan - 一个事件驱动,非阻塞的shell
  • GetOpt - 一个命令行选择解析器
  • OptParse - 另一个命令行选择解析器
  • Commando - 一个简单的命令行选择解析器
  • GetOptionKit - 同样还是一个命令行选择解析器
  • Cron Expression -计算cron运行日期的库
  • ShellWrap - 一个简单的命令行包装库
  • Hoa Console - 另一个命令行库
  • Shunt -一个在多台远程机器上并行运行的命令行库
  • Cilex - 构建命令行工具的小型框架
  • CLImate - 构建命令行工具的框架(可以输出颜色和特殊格式)
  • Webmozart Console

定时任务( Crontab )

定时任务管理 crontab在 PHP 中的相关封装

  • Dispatcher - 基于Laravel的定时任务管理
  • swoole-crontab - 基于swoole的定时器程序,支持秒级处理
  • jobby - 一个 PHP 的定时任务管理器
  • cronlingo - Express crontabs as human friendly phrases

身份验证( Authentication and Authorization )

实现身份验证模式的库

标记( Markup )

处理标记的库

字符串( Strings )

解析和操纵字符串的库

  • ANSI to HTML5 - 一个将ANSI转换为HTML5的库
  • Patchwork UTF-8 - 处理UTF-8格式字符串的便携库
  • Hoa String - 另一个UTF-8格式的字符串库
  • Stringy - 一个多字节支持的字符串操纵库
  • Color Jizz - 一个处理和转换颜色的库
  • UUID - 生成UUIDs的库
  • Slugify - 一个将字符串转换为slug格式的库
  • Urlify - 一个Django URLify.js的PHP端口
  • Text - 一个文本处理库
  • SQL Formatter - 一个用于格式化SQL语句的库
  • UA Parser - 一个解析UA(User Agent)字符串的库
  • Device Detector - 另一个解析UA(User Agent)字符串的库
  • Mobile-Detect - 一个轻量级的检测移动设备的库(包括桌面设备)
  • Browser - 检测关于用户的浏览器环境

数字( Numbers )

处理数字的库

过滤和验证( Filtering ang Validation )

用于过滤和验证数据的库

REST和API

用于开发restful APIs的库和Web框架

  • Apigility - 一个使用Zend Framework2构建的API构建器
  • Hateoas - 一个HATEOAS REST的web服务库
  • HAL - 一个超文本应用语言(HAL)构建库
  • Negotiation - 一个内容协商库
  • Drest -一个将Doctrine实体展现为REST资源结点的库
  • Restler - 一个将PHP方法展现为RESTful web API的轻量级框架
  • fractal - [最佳实践]数据返回的统一化处理

缓存( Caching )

缓存数据的库

数据结构和存储( Data Structure and Storage )

实现数据结构和存储技术的库

通知( Notifications )

关于通知的库

部署( Deployment )

用于项目部署的库

  • Pomander - 一个PHP应用的部署工具
  • Rocketeer - PHP的快速和简单部署器
  • Envoy - 使用PHP运行SSH任务的工具
  • Plum - 一个部署库
  • Deployer - 一个部署工具
  • walle-web - 一个开源的web代码发布管理系统

国际化和本地化(Internationalisation and Localisation)

用于国际化(I18n)和本地化(L10n)的库

第三方API( Third Party APIs )

访问第三方API的库

扩展( Extensions )

帮助构建PHP扩展的库

  • Zephir - 用于开发PHP扩展的一种在PHP和C++间的编译语言
  • PHP CPP - 一个用于开发PHP扩展的C++库

PHP 安装(PHP Installation)

帮助安装和管理PHP

开发环境(Development Environment)

创建沙箱开发环境的软件和工具

  • Vagrant - 一个轻便的创建开发环境的工具
  • Ansible - 一个简单的业务流程框架
  • Puppet - 服务器自动化框架和应用
  • PuPHPet - 一个用于构建PHP开发虚拟机工具
  • Protobox - 另一个用于构建PHP开发虚拟机工具
  • Phansible - 另一个用于构建PHP开发虚拟机工具
  • centstead - Laravel local development environment base on vagrant and homestead

虚拟机(Virtual Machines)

替代的PHP虚拟机

  • HHVM - Facebook 开源的PHP虚拟机
  • HippyVM - 另一个PHP虚拟机

开发工具(Integrated Development Environment)

支持PHP的IDE

Web 应用程序(Web Applications)

基于Web的应用程序和工具

基础设施(Infrastructure)

提供PHP应用程序和服务的基础设施

其他( Miscellaneous )

不属于以上分类的有用的类库和工具


英文版

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Contributing

Please see CONTRIBUTING and CODE-OF-CONDUCT for details.

Table of Contents

Dependency Management

Libraries for dependency and package management.

Dependency Management Extras

Extras related to dependency management.

  • Composed - A library to parse your project's Composer environment at runtime.
  • Composer Checker - A tool to validate Composer configurations.
  • Composer Merge Plugin - A composer plugin to merge several composer.json files.
  • Composition - A library to check your Composer environment at runtime.
  • NameSpacer - A library to convert from underscores to namespaces.
  • Patch Installer - A library to install patches using Composer.
  • Prestissimo - A composer plugin which enables parallel install process.
  • Satis - A static Composer repository generator.
  • tooly - A library to manage PHAR files in project using Composer.
  • Toran Proxy - A static Composer repository and proxy.

Frameworks

Web development frameworks.

  • Aura PHP - A framework of independent components.
  • CakePHP - A rapid application development framework (CP).
  • Laravel 5 - Another PHP framework (L5).
  • Nette - Another framework comprised of individual components.
  • Phalcon - A framework implemented as a C extension.
  • PPI Framework 2 - An interoperability framework.
  • Symfony 2 - A framework comprised of individual components (SF2).
  • Yii2 - Another PHP framework.
  • Zend Framework 2 - Another framework comprised of individual components (ZF2).
  • Radar - An Action-Domain-Responder implementation for PHP.
  • Ice - Another simple and fast PHP framework delivered as C-extension.

Framework Extras

Extras related to web development frameworks.

  • CakePHP CRUD - A Rapid Application Development (RAD) plugin for CakePHP.
  • Knp RAD Bundle - A Rapid Application Development (RAD) bundle for Symfony 2.
  • Symfony CMF - A Content Management Framework to create custom CMS.

Components

Standalone components from web development frameworks and development groups.

Micro Frameworks

Micro frameworks and routers.

  • Bullet PHP - A micro framework for building REST APIs.
  • Lumen - A micro-framework by Laravel.
  • Proton - A StackPHP compatible micro framework.
  • Silex - A micro framework built around Symfony2 components.
  • Slim - Another simple micro framework.

Micro Framework Extras

Extras related to micro frameworks and routers.

Routers

Libraries for handling application routing.

  • Fast Route - A fast routing library.
  • Klein - A flexible router.
  • Pux - Another fast routing library.
  • Route - A routing library built on top of Fast Route.

Templating

Libraries and tools for templating and lexing.

  • Foil - Another native PHP templating library.
  • Lex - A lightweight template parser.
  • MtHaml - A PHP implementation of the HAML template language.
  • Mustache - A PHP implementation of the Mustache template language.
  • Phly Mustache - Another PHP implementation of the Mustache template language.
  • PHPTAL - A PHP implementation of the TAL templating language.
  • Plates - A native PHP templating library.
  • Smarty - A template engine to complement PHP.
  • Twig - A comprehensive templating language.
  • Tale Jade - A PHP implementation of the Jade template language.

Static Site Generators

Tools for pre-processing content to generate web pages.

  • Couscous - Couscous turns Markdown documentation into beautiful websites. It's GitHub Pages on steroids.
  • Phrozn - Another tool that converts Textile, Markdown and Twig into HTML.
  • Sculpin - A tool that converts Markdown and Twig into static HTML.
  • Spress - An extensible tool that converts Markdown and Twig into HTML.

HTTP

Libraries for working with HTTP.

  • Buzz - Another HTTP client.
  • Guzzle - A comprehensive HTTP client.
  • HTTPFul - A chainable HTTP client.
  • PHP VCR - A library for recording and replaying HTTP requests.
  • Requests - A simple HTTP library.
  • Retrofit - A library to ease creation of REST API clients.
  • zend-diactoros - PSR-7 HTTP Message implementation.

Scraping

Libraries for scraping websites.

  • Embed - An information extractor from any web service or page.
  • Goutte - A simple web scraper.
  • PHP Spider - A configurable and extensible PHP web spider.

Middlewares

Libraries for building application using middlewares.

  • Expressive - PSR-7 Middleware framework from Zend.
  • PSR7-Middlewares - Inspiring collection of handy middlewares.
  • Relay - A PHP 5.5 PSR-7 middleware dispatcher.
  • Stack - A library of stackable middleware for Silex/Symfony.
  • zend-stratigility - Middleware for PHP built on top of PSR-7.

URL

Libraries for parsing URLs.

  • PHP Domain Parser - A domain suffix parser library.
  • Purl - A URL manipulation library.
  • sabre/uri - A functional URI manipulation library.
  • Uri - Another URL manipulation library.

Email

Libraries for sending and parsing email.

Files

Libraries for file manipulation and MIME type detection.

  • Apache MIME Types - A library that parses Apache MIME types.
  • Canal - A library to determine internet media types.
  • CSV - A CSV data manipulation library.
  • Ferret - A MIME detection library.
  • Flysystem - Another filesystem abstraction layer.
  • Gaufrette - A filesystem abstraction layer.
  • Hoa Mime - Another MIME detection library.
  • Lurker - A resource tracking library.
  • PHP FFmpeg - A wrapper for the FFmpeg video library.

Streams

Libraries for working with streams.

  • Streamer - A simple object-orientated stream wrapper library.

Dependency Injection

Libraries that implement the dependency injection design pattern.

  • Acclimate - A common interface to dependency injection containers and service locators.
  • Auryn - A recursive dependency injector.
  • Container - Another flexible dependency injection container.
  • PHP-DI - A dependency injection container that supports autowiring.
  • Pimple - A tiny dependency injection container.
  • Symfony DI - A dependency injection container component (SF2).

Imagery

Libraries for manipulating images.

Testing

Libraries for testing codebases and generating test data.

  • Alice - An expressive fixture generation library.
  • AspectMock - A mocking framework for PHPUnit/Codeception.
  • Atoum - A simple testing library.
  • Behat - A behaviour driven development (BDD) testing framework.
  • Codeception - A full stack testing framework.
  • DBUnit - A database testing library for PHPUnit.
  • Faker - A fake data generator library.
  • HTTP Mock - A library for mocking HTTP requests in unit tests.
  • Kahlan - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.
  • Mink - Web acceptance testing.
  • Mockery - A mock object library for testing.
  • ParaTest - A parallel testing library for PHPUnit.
  • Peridot - An event driven test framework.
  • Phake - Another mock object library for testing.
  • Pho - Another behaviour driven development testing framework.
  • PHP-Mock - A mock library for built-in PHP functions (e.g. time()).
  • PHPSpec - A design by specification unit testing library.
  • PHPT - A test tool used by PHP itself.
  • PHPUnit - A unit testing framework.
  • Prophecy - A highly opinionated mocking framework.
  • Samsui - Another fake data generator library.
  • VFS Stream - A virtual filesystem stream wrapper for testing.
  • VFS - Another virtual filesystem for testing.

Continuous Integration

Libraries and applications for continuous integration.

  • 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 - A continuous integration client written in PHP and powered by Docker.
  • PHPCI - An open source continuous integration platform for PHP.
  • SemaphoreCI - A continuous integration platform for open source and private projects.
  • Shippable - A docker based continious integration platform for open source and private projects.
  • Sismo - A continuous testing server library.
  • Travis CI - A continuous integration platform.
  • Wercker - A continuous integration platform

Documentation

Libraries for generating project documentation.

  • APIGen - Another API documentation generator.
  • daux.io - A documentation generator which uses Markdown files.
  • PHP Documentor 2 - A documentation generator.
  • phpDox - A documentation generator for PHP projects (that is not limited to API documentation).
  • Sami - An API documentation generator.

Security

Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.

  • Halite - A simple library for encryption using libsodium.
  • HTML Purifier - A standards compliant HTML filter.
  • IniScan - A tool that scans PHP INI files for security.
  • Optimus - Id obfuscation based on Knuth's multiplicative hashing method.
  • PHP Encryption - Secure PHP Encryption Library.
  • PHP IDS - A structured PHP security layer.
  • PHP SSH - An experimental object orientated SSH wrapper library.
  • PHPSecLib - A pure PHP secure communications library.
  • RandomLib - A library for generating random numbers and strings.
  • SecurityMultiTool - A PHP security library.
  • SensioLabs Security Check - A web tool to check your Composer dependencies for security advisories.
  • TCrypto - A simple encrypted key-value storage library.
  • True Random - A library that generates random numbers using www.random.org.
  • VAddy - A continuous security testing platform for web applications.
  • Zed - An integrated penetration testing tool for web applications.

Passwords

Libraries and tools for working with and storing passwords.

  • GenPhrase - A library for generating secure random passphrases.
  • Password Compat - A compatibility library for the new PHP 5.5 password functions.
  • Password Policy - A password policy library for PHP and JavaScript.
  • Password Validator - A library for validating and upgrading password hashes.
  • Password-Generator - PHP library to generate random passwords.
  • PHP Password Lib - A library for generating and validating passwords.
  • phpass - A portable password hashing framework.
  • Zxcvbn PHP - A realistic PHP password strength estimate library based on Zxcvbn JS.

Code Analysis

Libraries and tools for analysing, parsing and manipulating codebases.

  • Athletic - An annotation based benchmark framework.
  • Code Climate - An automated code review.
  • Dissect - A set of tools for lexical and syntactical analysis.
  • Exakat - A static analysis engine for PHP.
  • GrumPHP - A composer plugin to defend code quality.
  • Mondrian - A code analysis tool using Graph Theory.
  • PHP Analyser - A library for analysing PHP code to find bugs and errors.
  • PHP Code Sniffer - A library that detects PHP, CSS and JS coding standard violations.
  • PHP CS Fixer - A coding standards fixer library.
  • PHP Manipulator - A library for analysing and modifying PHP Source Code.
  • PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
  • PHP Metrics - A static metric library.
  • PHP Migration - A static analyzer for PHP version migration.
  • PHP Parser - A PHP parser written in PHP.
  • PHP Refactoring Browser - A command line utility for refactoring PHP code.
  • PHP Semantic Versioning Checker - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
  • phan - A static analyzer based on PHP 7+ and the php-ast extension.
  • PHPCheckstyle - A tool to help adhere to certain coding conventions.
  • PHPCPD - A library that detects copied and pasted code.
  • PhpDependencyAnalysis - A tool to create customisable dependency graphs.
  • PHPLOC - A tool for quickly measuring the size of a PHP project.
  • PHPQA - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
  • PHPPHP - A PHP VM implementation in PHP.
  • PHPSandbox - A PHP sandbox environment.
  • Qafoo Quality Analyzer - A tool to visualize metrics and source code.
  • Scrutinizer - A web tool to scrutinise PHP code.
  • UBench - A simple micro benchmark library.

Architectural

Libraries related to design patterns, programming approaches and ways to organize code.

  • Compose - A function composition library.
  • Design Patterns PHP - A repository of software patterns implemented in PHP.
  • Finite - A simple PHP finite state machine.
  • Functional PHP - A functional programming library.
  • Galapagos - Evolutionary language transformation.
  • Iter - A library that provides iteration primitives using generators.
  • Monad PHP - A simple Monad library.
  • Patchwork - A library for redefining userland functions.
  • PHP Option - An option type library.
  • Pipeline - A pipeline pattern implementation.
  • Ruler - A simple stateless production rules engine.
  • RulerZ - A powerful rule engine and implementation of the Specification pattern.

Debugging and Profiling

Libraries and tools for debugging and profiling code.

  • APM - Monitoring extension collecting errors and statistics into SQLite/MySQL/StatsD.
  • Barbushin PHP Console - Another web debugging console using Google Chrome.
  • Blackfire.io - A low-overhead code profiler.
  • Kint - A debugging and profiling tool.
  • PHP Console - A web debugging console.
  • PHP Debug Bar - A debugging toolbar.
  • PHPBench - A benchmarking Framework.
  • PHPDBG - An interactive PHP debugger.
  • Tideways.io - Monitoring and profiling tool
  • Tracy - A simple error detection, logging and time measuring library.
  • xDebug - A debug and profile tool for PHP.
  • XHProf - A profiling tool originally developed by Facebook.
  • Z-Ray - A debug and profile tool for Zend Server.

Build Tools

Project build and automation tools.

  • Bob - A simple project automation tool.
  • Box - A utility to build PHAR files.
  • Construct - A PHP project/micro-package generator.
  • Phake - A rake PHP clone library.
  • Phing - A PHP project build system inspired by Apache Ant.

Task Runners

Libraries for automating and running tasks.

  • Bldr - A PHP Task runner built on Symfony components.
  • Jobby - A PHP cron job manager without modifying crontab.
  • Robo - A PHP Task runner with object-orientated configurations.
  • Task - A pure PHP task runner inspired by Grunt and Gulp.

Navigation

Tools for building navigation structures.

Asset Management

Tools for managing, compressing and minifying website assets.

  • Assetic - An asset manager pipeline library.
  • JShrink - A JavaScript minifier library.
  • Munee - An asset optimiser library.
  • Pipe - Another asset manager pipeline library.
  • Puli - A library for determining assets absolute paths.
  • BowerPHP - A PHP implementation of Bower. A package manager for the web

Geolocation

Libraries for geocoding addresses and working with latitudes and longitudes.

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.
  • ExpressiveDate - Another DateTime API extension.
  • Moment.php - Moment.js inspired PHP DateTime handler with i18n support.

Event

Libraries that are event-driven or implement non-blocking event loops.

  • Amp - An event driven non-blocking I/O library.
  • Broadway - An event source and CQRS library.
  • Cake Event - An event dispatcher library (CP).
  • Elephant.io - Yet another web socket library.
  • Evenement - An event dispatcher library.
  • Event - An event library with a focus on domain events.
  • Hoa EventSource - An event source library.
  • Hoa WebSocket - Another web socket library.
  • Icicle - An asynchronous library with coroutines, non-blocking I/O, and multithreading.
  • Prooph Event Store - An event source component to persist event messages
  • Ratchet - A web socket library.
  • React - An event driven non-blocking I/O library.
  • Rx.PHP - A reactive extension library.
  • Workerman - An event driven non-blocking I/O library.

Logging

Libraries for generating and working with log files.

  • Analog - A closure-based micro logging package.
  • KLogger - An easy-to-use PSR-3 compliant logging class.
  • Monolog - A comprehensive logger.

E-commerce

Libraries and applications for taking payments and building online e-commerce stores.

  • Money - A PHP implementation of Fowler's money pattern.
  • OmniPay - A framework agnostic multi-gateway payment processing library.
  • Payum - A payment abstraction library.
  • Shopware - Highly customizable e-commerce software
  • Swap - An exchange rates library.
  • Sylius - An open source e-commerce solution.

PDF

Libraries and software for working with PDF files.

  • Dompdf - A HTML to PDF converter.
  • PHPPdf - A library for generating PDFs and images from XML.
  • Snappy - A PDF and image generation library.
  • WKHTMLToPDF - A tool to convert HTML to PDF.

Office

Libraries for working with office suite documents.

  • ExcelAnt - A library for manipulating Microsoft Excel documents.
  • PHPExcel - A library for working with Microsoft Excel documents.
  • PHPPowerPoint - A library for working with Microsoft PowerPoint Presentations.
  • PHPWord - A library for working with Microsoft Word documents.

Database

Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.

  • Baum - A nested set implementation for Eloquent.
  • Cake ORM - Object-Relational Mapper, implemented using the DataMapper pattern (CP).
  • Doctrine Extensions - A collection of Doctrine behavioural extensions.
  • Doctrine - A comprehensive DBAL and ORM.
  • Eloquent - A simple ORM (L5).
  • LazyRecord - A fast ORM designed for simplicity, extendability and performance.
  • Pomm - An Object Model Manager for PostgreSQL.
  • Propel - A fast ORM, migration library and query builder.
  • ProxyManager - A set of utilities to generate proxy objects for data mappers.
  • RedBean - A lightweight, configuration-less ORM.
  • Spot2 - A MySQL datamapper ORM.

Migrations

Libraries to help manage database schemas and migrations.

  • Doctrine Migrations - A migration library for Doctrine.
  • Migrations - A migration management library.
  • Phinx - Another database migration library.
  • PHPMig - Another migration management library.
  • Ruckusing - Database migrations for PHP ala ActiveRecord Migrations with support for MySQL, Postgres, SQLite.

NoSQL

Libraries for working with "NoSQL" backends.

  • Monga - A MongoDB abstraction library.
  • MongoQB - A MongoDB query builder library.
  • PHPMongo - A MongoDB ORM.
  • Predis - A feature complete Redis library.

Queue

Libraries for working with event and task queues.

  • Bernard - A multibackend abstraction library.
  • BunnyPHP - A performant pure-PHP AMQP (RabbitMQ) sync and also async (ReactPHP) library.
  • Pheanstalk - A Beanstalkd client library.
  • PHP AMQP - A pure PHP AMQP library.
  • Tarantool Queue - PHP bindings for Tarantool Queue.
  • Thumper - A RabbitMQ pattern library.

Search

Libraries and software for indexing and performing search queries on data.

Command Line

Libraries related to the command line.

  • Boris - A tiny PHP REPL.
  • Cilex - A micro framework for building command line tools.
  • CLI Menu - A library for building CLI menus.
  • CLIFramework - A command-line framework supports zsh/bash completion generation, subcommands and option constraints. It also powers phpbrew.
  • CLImate - A library for outputting colours and special formatting.
  • Commando - Another simple command line opt parser.
  • Cron Expression - A library to calculate cron run dates.
  • GetOpt - A command line opt parser.
  • GetOptionKit - Another command line opt parser.
  • Hoa Console - Another command line library.
  • OptParse - Another command line opt parser.
  • Pecan - An event-driven, non-blocking shell.
  • PsySH - Another PHP REPL.
  • ShellWrap - A simple command line wrapper library.
  • Shunt - A library for running commands in parallel on multiple remote machines.

Authentication and Authorization

Libraries for implementing user authentication and authorization.

  • Hawk - A Hawk HTTP authentication library.
  • HybridAuth - An open source social sign on library.
  • Json Web Token - Json Tokens to authenticate and transmit information.
  • Lock - A library for implementing Access Control Lists (ACL) systems.
  • OAuth 1.0 Client - An OAuth 1.0 client library.
  • OAuth 2.0 Client - An OAuth 2.0 client library.
  • OAuth2 Server - Another OAuth2 server implementation.
  • OAuth2 Server - An OAuth2 authentication server, resource server and client library.
  • Opauth - A multi-provider authentication framework.
  • PHP oAuthLib - Another OAuth library.
  • Sentinel Social - A library for social network authentication.
  • Sentinel - A framework agnostic authentication & authorisation library.
  • TwitterOAuth - A Twitter OAuth library.
  • TwitterSDK - A fully tested Twitter SDK.

Markup

Libraries for working with markup.

Strings

Libraries for parsing and manipulating strings.

  • Agent - A PHP desktop/mobile user agent parser, based on Mobiledetect.
  • ANSI to HTML5 - An ANSI to HTML5 converter library.
  • Color Jizz - A library for manipulating and converting colours.
  • Device Detector - Another library for parsing user agent strings.
  • Hoa String - Another UTF-8 string library.
  • Jieba-PHP - A PHP port of Python's jieba. Chinese text segmentation for natural language processing.
  • Mobile-Detect - A lightweight PHP class for detecting mobile devices (including tablets).
  • Patchwork UTF-8 - A portable library for working with UTF-8 strings.
  • Slugify - A library to convert strings to slugs.
  • SQL Formatter - A library for formatting SQL statements.
  • Stringy - A string manipulation library with multibyte support.
  • Text - A text manipulation library.
  • UA Parser - A library for parsing user agent strings.
  • URLify - A PHP port of Django's URLify.js.
  • UUID - A library for generating UUIDs.

Numbers

Libraries for working with numbers.

  • ByteUnits - A library to parse, format and convert byte units in binary and metric systems.
  • LibPhoneNumber for PHP - A PHP implementation of Google's phone number handling library.
  • Math - A library for working with large numbers.
  • Numbers PHP - A library for working with numbers.
  • PHP Conversion - Another library for converting between units of measure.
  • PHP Units of Measure - A library for converting between units of measure.

Filtering and Validation

Libraries for filtering and validating data.

  • Cake Validation - Another validation library (CP).
  • DMS Filter - An annotation filtering library.
  • Filterus - A simple PHP filtering library.
  • ISO-codes - A library for validating inputs according standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries
  • MetaYaml - A schema validation library that supports YAML, JSON and XML.
  • Respect Validation - A simple validation library.
  • Upload - A library for handling file uploads and validation.
  • Valitron - Another validation library.
  • Volan - Another simplified validation library.

API

Libraries and web tools for developing APIs.

  • API Platform - Expose in minutes an hypermedia REST API that embraces JSON-LD, Hydra format.
  • Apigility - An API builder built with Zend Framework 2.
  • Drest - A library for exposing Doctrine entities as REST resource endpoints.
  • HAL - A Hypertext Application Language (HAL) builder library.
  • Hateoas - A HATEOAS REST web service library.
  • Negotiation - A content negotiation library.
  • Restler - A lightweight framework to expose PHP methods as RESTful web API.
  • wsdl2phpgenerator - A tool to generate PHP classes from SOAP WSDL files.

Caching

Libraries for caching data.

Data Structure and Storage

Libraries that implement data structure or storage techniques.

  • Ardent - A library of data structures.
  • Cake Collection - A simple collections library (CP).
  • Collections - Collections Abstraction library for PHP.
  • Fractal - A library for converting complex data structures to JSON output.
  • Ginq - Another PHP library based on .NET's LINQ.
  • JsonMapper - A library that maps nested JSON structures onto PHP classes.
  • Knapsack - Collection library inspired by Clojure's sequences.
  • PHP Collections - A simple collections library.
  • PINQ - A PHP library based on .NET's LINQ (Language Integrated Query).
  • Serializer - A library for serialising and de-serialising data.
  • Totem - A library to manage and create data changesets.
  • YaLinqo - Yet Another LINQ to Objects for PHP.
  • Zend Serializer - Another library for serialising and de-serialising data (ZF2).

Notifications

Libraries for working with notification software.

  • JoliNotif - A cross-platform library for desktop notification (support for Growl, notify-send, toaster, etc)
  • Nod - A notification library (e.g., Growl).
  • Notification Pusher - A standalone library for device push notifications.
  • Notificato - A library for handling push notifications.
  • Notificator - A lightweight notification library.
  • Php-pushwoosh - A PHP Library to easily send push notifications with the Pushwoosh REST Web Services.

Deployment

Libraries for project deployment.

  • Deployer - A deployment tool.
  • Envoy - A tool to run SSH tasks with PHP.
  • Plum - A deployer library.
  • Pomander - A deployment tool for PHP applications.
  • Rocketeer - A fast and easy deployer for the PHP world.

Internationalisation and Localisation

Libraries for Internationalization (I18n) and Localization (L10n).

Third Party APIs

Libraries for accessing third party APIs.

Extensions

Libraries to help build PHP extensions.

  • PHP CPP - A C++ library for developing PHP extensions.
  • Zephir - A compiled language between PHP and C++ for developing PHP extensions.

Miscellaneous

Useful libraries or tools that don't fit in the categories above.

  • Annotations - An annotations library (part of Doctrine).
  • Cake Utility - Utility classes such as Inflector, String, Hash, Security and Xml (CP).
  • Chief - A command bus library.
  • ClassPreloader - A library for optimising autoloading.
  • Country List - A list of all countries with names and ISO 3166-1 codes.
  • Embera - An Oembed consumer library.
  • Essence - A library for extracting web media.
  • Flux - A regular expression building library.
  • Graphviz - A Graphviz library.
  • Hprose-PHP - A very newbility RPC Library, support 25+ languages now.
  • JSON Lint - A JSON lint utility.
  • JSONPCallbackValidator - A library for validating JSONP callbacks.
  • Jumper - A remote service executor library.
  • LadyBug - A dumper library.
  • Lambda PHP - A Lambda calculus interpreter in PHP.
  • LiteCQRS - A CQRS (Command Query Responsibility Separation) library.
  • Metrics - A simple metrics API library.
  • noCAPTCHA - Helper for Google's noCAPTCHA (reCAPTCHA).
  • Nmap - A PHP wrapper around Nmap.
  • Opengraph - An opengraph library.
  • Pagerfanta - A pagination library.
  • PHP Expression - A PHP expression language.
  • PHP PassBook - A PHP library for iOS PassBook.
  • PHP-GPIO - A library for playing with the Raspberry PI's GPIO pins.
  • PHPCR - A PHP port of the Java Content Repository (JCR).
  • PHPStack - A TCP/IP stack proof of concept written in PHP.
  • print_o - An object graph visualizer.
  • Procrastinator - A library for running time consuming tasks.
  • Prooph Service Bus - Lightweight message bus supporting CQRS and Micro Services
  • RMT - A library for versioning and releasing software.
  • sabre/vobject - A library for parsing VCard and iCalendar objects.
  • Slimdump - An easy dumper tool for MySQL.
  • Spork - A process forking library.
  • Sslurp - A library that makes dealing with SSL suck less.
  • SuperClosure - A library that allows Closures to be serialized.
  • Symfony VarDumper - A variable dumper component (SF2).
  • Underscore - A PHP port of the Underscore JS library.
  • Whoops - A pretty error handling library.

Software

Software for creating a development environment.

PHP Installation

Tools to help install and manage PHP on your computer.

  • HomeBrew PHP - A PHP tap for HomeBrew.
  • HomeBrew - A package manager for OSX.
  • PHP Brew - A PHP version manager and installer.
  • PHP Build - Another PHP version installer.
  • PHP Env - Another PHP version manager.
  • PHP OSX - A PHP installer for OSX.
  • PHP Switch - Another version manager.
  • VirtPHP - A tool for creating and managing isolated PHP environments.

Development Environment

Software and tools for creating a sandboxed development environment.

  • Ansible - A radically simple orchestration framework.
  • Phansible - A web tool for building PHP development virtual machines with Ansible.
  • Protobox - Another web tool for building PHP development virtual machines.
  • PuPHPet - A web tool for building PHP development virtual machines.
  • Puppet - A server automation framework and application.
  • Vagrant - A portable development environment utility.

Virtual Machines

Alternative PHP virtual machines.

  • Hack - A programming language for HHVM that interoperates seamlessly with PHP.
  • HHVM - A Virtual Machine, Runtime and JIT for PHP by Facebook.
  • HippyVM - Another PHP virtual machine.

Integrated Development Environment

Integrated Development Environments with support for PHP.

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.
  • phpBeanstalkdAdmin - Monitoring and administration interface for Beanstalkd.
  • phpRedisAdmin - A simple web interface to manage Redis databases.
  • phpPgAdmin - A web-based administration tool for PostgreSQL.
  • phpMyAdmin - A web interface for MySQL/MariaDB.
  • Adminer - Database management in a single PHP file.
  • Grav - A modern flat-file CMS.

Infrastructure

Infrastructure for providing PHP applications and services.

  • appserver.io - A multithreaded application server for PHP, written in PHP.
  • php-pm - A process manager, supercharger and load balancer for PHP applications.

Resources

Various resources, such as books, websites and articles, for improving your PHP development skills and knowledge.

PHP Websites

Useful PHP-related websites.

  • Nomad PHP - A online PHP learning resource.
  • PHP Best Practices - A PHP best practice guide.
  • PHP FIG - The PHP Framework Interoperability Group.
  • PHP Mentoring - Peer to peer PHP mentorship organization.
  • PHP School - Open Source Learning for PHP.
  • PHP Security - A guide to PHP security.
  • PHP The Right Way - A PHP best practice quick reference guide.
  • PHP UG - A website to help people locate their nearest PHP user group (UG).
  • PHP Versions - Lists which versions of PHP are available on several popular web hosts.
  • PHP Weekly - A weekly PHP newsletter.
  • PHPTrends - An overview of fastest growing PHP libraries.
  • Securing PHP - A newsletter about PHP security and library recommendations.
  • Seven PHP - A website that interviews members of the PHP community.

Other Websites

Useful websites related to web development.

PHP Books

Fantastic PHP-related books.

Other Books

Books related to general computing and web development.

PHP Videos

Fantastic PHP-related videos.

PHP Reading

PHP-releated reading materials.

PHP Internals Reading

Reading materials related to the PHP internals or performance.

PHP Magazines

Fantastic PHP-related magazines.


中文版:https://github.com/JingwenTian/awesome-php(last edit 21 days ago

英文版:https://github.com/ziadoz/awesome-php(last edit 2 days ago)


分类: PHP, 技术, 技术分享, 编程 | 标签: , , , , | Permalink