收集整理一些收集常用的PHP类库资源项目以及技巧,以便在工作中迅速的查找所需要的东西,这个列表中的内容有来自 awesome-php 的翻译,也有来自开发者周刊、网友推荐以及个人的积累等。
学习资源

PHP相关的有参考价值的社区,博客,网站,文章,书籍,视频等资源
PHP网站PHP The Right Way - 一个PHP实践的快速参考指导PHP Best Practices - 一个PHP最佳实践PHP Weekly News - 一个PHP 周刊Securing PHP - 有关PHP安全相关PHP FIG - PHP框架交互小组PSR 中文翻译PHP School - 一个开源的PHP学习资源PHPTrends - 一些快速发展的PHP类库检索PHP 开发者实践其他网站The Open Web Application Security Project - 一个开源软件安全社区WebSec IO - 一个web 安全社区Semantic Versioning - 语义化版本Atlassian Git Tutorials - 一系列的Git教程Servers for Hackers - 有关服务器运维相关PHP书籍Modern PHP - 作者是PHP 之道的发起人和Slim框架的作者Modern PHPPHP Pandas其他书籍The Linux Command Line - Linux 命令行教程
依赖管理
用于依赖管理的包和框架
Composer / Packagist - 一个包和依赖管理器.Composer Installers - 一个多框架Composer库安装器pickle - PHP扩展安装器Melody - A tool to build one file Composer scripts.
框架
Web开发框架
Symfony2 - 由独立组件构成的框架Zend framework 2 - 同样是由独立组件构成的框架Laravel 5 - 简洁优雅的PHP Web开发框架Aura PHP - 独立组件的框架Yii2 - 用于开发大型Web应用的高性能PHP框架Nette - 同样是由独立组件构成的框架PPI framework 2 - 一个交互性的框架CakePHP - 一个高效的应用开发框架Phalcon - 一个作为C扩展的框架Yaf - 鸟哥的C扩展的框架swoole-yaf - 基于 Swoole 及 Yaf 的开发框架yaf - 另一个基于 Swoole 及 Yaf 的开发框架Zan PHP framework - 有赞开源的 PHP 框架
组件
Aura Components - 一个PHP5.4的组件包Hoa Project - 一个PHP组件集合
配置
加载配置文件的类库和扩展
Yaconf - 一个高性能的配置管理扩展config - 一个轻量级的配置加载器, 支持 PHP, INI, XML, JSON, YAML filesZend-configphpdotenv - 读取.env中全局的最高优先级变量
微框架
微型框架和路由
Silex - 基于Symphony2组件的微型框架Silex Skeleton - 用于Silex的项目框架Silex Web Profiler - 用于Silex的Web调试工具条Slim - 另一个简单的微型框架Slim Skeleton - 用于Slim的框架Slim View - Slim的自定义视图集Slim Middleware - Slim的自定义中间件集合SlimMVC-Skeleton - Slim基础上实现了MVC及一些组件Bullet PHP - 用于构建REST APIs的微型框架Lumen - 基于Laravel的微型框架Proton - 一个微型PHP框架blink - 一个为构建 “long running” 服务而生的 Web 微型高性能框架
路由
Fast Route - 一个高效路由库Route - 基于Fast Route的路由库Pux - 另一个高效的路由库Klein - 一个灵活的路由库Macaw - 一个简单的 PHP 路由器,超级精简、快速而且很性感。
模板引擎
模板和词法分析的库与工具
Twig - 一种综合的模板语言Twig Cache Extension - 用于Twig的模板片段缓存库Mustache - PHP实现的Mustache模板语言Phly Mustache - 另一个PHP实现的Mustache模板语言MtHaml - PHP实现的HAML模板语言PHPTAL - PHP实现的TAL模板语言Plates - 一个原始的PHP模板库Lex - 一个轻量级模板解析器
静态站生成器
生成Web页面内容的预处理工具
Sculpin - 将Markdown和Twig转换为静态HTML的工具Phrozn - 另一款ithub将Textile、Markdown和Twig转为HTML的工具SpressCouscous - 将Markdown 文档转换成 HTML 发布到Github Page 的工具
HTTP
用于HTTP和抓取网站的库
Guzzle - 一个完整的HTTP客户端Buzz - 另一个HTTP客户端Requests - 一个简单的HTTP库HTTPFul - 一个链式HTTP客户端Goutte - 一个简单的Web抓取器PHP VCR - 一个录制和回放HTTP请求的库php-curl-class - PHP的Curl类
中间件
用于构建应用的类库的中间件
URL
解析URL的库
Purl - 一个URL操作库PHP Domain Parser - 一个本地的后缀解析器Uri - 一个简单的URL操作库
邮件
用于发送和解析Email的库
SwiftMailer - 一个邮件程序的解决方案PHPMailer - 另一个邮件程序的解决方案Nette Mail - 一个简单优雅的邮件发送模块Fetch - 一个IMAP库Email Reply Parser - 一个邮件回复解析器库Stampie - 关于邮件服务的库,比如SendGrid、PostMark、MailGun和MandrillCssToInlineStyles - 邮件模板中一个内联的CSS库Email Validator - 一个小巧的邮箱验证库
文件操作
关于文件处理和MIME类型检查
Gaufrette - 一个文件流的抽象层Flysystem - 另一个文件流的抽象层Canal - 一个检查互联网媒体类型的库Apache MIME Types - 一个解析Apache MIME类型的库Ferret - 一个MIME检测库Hoa Mime - 另一个MIME检测库Lurker - 一个资源跟踪库PHP File Locator - 一个在大型项目中定位文件的库PHP FFmpeg - 一个用于FFmpeg视频包装的库CSV - 一个CSV数据操作库
流
处理流的库
Streamer - 一个简单的面向对象流包装库
依赖注入
实现依赖注入设计模式的库
Pimple - 一个小的依赖注入容器container-interop - Containers interoperabilityAuryn - 另一个小的依赖注入容器Container - 另一个灵活的依赖注入容器PHP DI - 一个使用标注实现的依赖注入Acclimate - 依赖注入容器和服务定位器的通用接口Symfony DI - 一个的依赖注入组件Twitteesimple di containerDing
图像
处理图像的库
Imagine - 一个图像处理库PHP Image Workshop - 另一个图像处理库Intervention Image - 同样还是一个图像处理库GIF frame Extractor - 一个提取GIF动画帧信息的库GIF Creator - 从多幅图片中创建GIF动画的库Image With Text - 在图像中嵌入文本的库Color Extractor - 从图像中提取颜色的库Glide - 一个按需的图片处理库Image Optimizer - 一个优化图片的库PHPThumb - 缩略图处理库phpqrcode - 二维码生成库QrCode - 另一个二维码生成库
测试
测试代码库和生成测试数据的库
PHPUnit - 一个单元测试框架DBUnit - PHPUnit的代码测试库ParaTest - PHPUnit的并行测试库PHPSpec - 根据规范的单元测试库Codeception - 一个全栈测试框架AspectMock - PHPUnit/Codeception的模拟框架Atoum - 一个简单的测试库Mockery - 一个用于测试的模拟对象库Phake - 另一个用于测试的模拟对象库Prophecy - 一个强大的模拟框架Faker - 一个伪数据生成库Samsui - 另一个伪数据生成库Alice - 用于生成复杂数据的库Behat - 一个行为驱动开发的测试框架Pho - 另一个行为驱动开发的测试框架Mink - Web验收测试HTTP Mock - 一个在单元测试中模拟HTTP请求的库VFS Stream - 一个用于测试的虚拟文件系统流包装VFS - 另一个用于测试的虚拟文件系统Locust - 一个Python开发的现代负载测试库Peridot - 一个事件驱动的测试框架
持续集成
持续集成的库和应用
Travis CI - 一个持续集成的平台SemaphoreCI - 一个给开源程序和私有项目的持续集成平台PHPCI - 一个PHP的开源持续集成平台Sismo - 一个持续的测试服务器库Jenkins - PHP支持的持续集成平台JoliCi - PHP开发的由Docker支持的持续集成客户端
文档
生成项目文档的库
Sami - 一个API文档生成器APIGen - 另一个API文档生成器PHP documentor 2 - 文档生成器phpDox - 一个PHP项目的文档生成器
安全
用于生成安全的随机数、加密数据、扫描漏洞, 令牌的库
HTML Purifier - 一个标准的HTML过滤器RandomLib - 生成随机数和随机字符串的库True Random - 使用www.random.org生成随机数的库SecurityMultiTool - 一个PHP安全库PHPSecLib - 一个纯的PHP安全通信库TCrypto - 一个简单的键值加密存储库PHP IDS - 一个结构化的PHP安全层PHP SSH - 面向对象的SSH包装库IniScan - 一个扫描PHP INI文件安全的工具SensioLabs Security Check - 一个根据安全建议检查Composer依赖的Web工具Zed - 用于Web应用的集成渗透测试工具php-ratelimiter
密码
处理和存储密码的库和工具
Password Compat - 一个用于新的PHP5.5密码功能的兼容库phpass - 一个便携式密码哈希框架PHP Password Lib - 一个用于生成和验证密码的库Password Policy - 一个PHP和Javascript的密码规则库Password Validator - 验证和升级密码哈希的库Zxcvbn PHP - 一个基于Zxcvbn JS的PHP显示密码强度估计库GenPhrase - 一个生成安全随机口令的库
代码分析
用于分析、解析和操作代码库的工具
PHP Parser - 一个PHP编写的PHP解析器PHPPHP - 一个PHP实现的PHP虚拟机PHPSandbox - PHP的沙盒环境Dissect - 词法和语法分析的工具集合PHP Mess Detector - 一个扫描代码bug、次佳代码和未使用参数的库PHP Code Sniffer - 一个检测PHP、CSS和JS代码标准冲突的库PHPCPD - 一个检测复制和粘贴代码的库PHP Analyser - 一个分析PHP代码中错误的库PHP CS Fixer - 一个代码标准库PHP Manipulator - 用于分析和修改PHP源代码的库PHP Metrics - 一个静态测量库PHP Refactoring Browser - 一个用于重构PHP代码的命令行工具php-semver-checker - 一个版本对比的命令行工具UBench - 一个简单的小型基准测试库Athletic - 一个基于标注的基准测试库Mondrian - 使用图论的代码分析工具Scrutinizer - 检查PHP代码的Web工具PHPLOC - 一个快速评估PHP项目大小的工具PHPCheckstyle - 一个帮助遵守特定代码规则的工具PhpDependencyAnalysis - 一个创建可定制型依赖关系图表的工具Code Climate - 自动化的code reviewPHP Error - 用于转换标准的 PHP 错误信息,主要用于开发过程中的调试
结构
有关于设计模式,编程规范以及代码组织方式的库
PHP Option - 一个PHP选项类型的库Ruler - 一个简单的无状态的产生环境规则的引擎Finite - 一个简单的PHP有限状态机Compose - 一个功能组合库Monad PHP - 一个简单Monad库Patchwork - 一个重新定义用户的函数库Galapagos - 语言转换进化Design Patterns PHP - 一个使用PHP实现的设计模式实例库Functional PHP - 一个函数式编程库Lib Accessor - 一个简化访问的库Iter - 一个使用生成器提供迭代原语的库
调试和性能
调试代码的库和工具
xDebug - 一个PHP的调试和分析工具whoopsPHP Debug Bar - 一个调试工具条PHP Console - Web调试控制台Barbushin PHP Console - 一个使用Google Chrome的Web调试控制工具PHPDBG - 一个交互性的PHP调试器Tracy - 一个简单的错误检测、日志和时间测量库Z-Ray - 一个调试和性能分析的工具xHprof - Facebook开源的PHP性能评测工具xhprof.io - 实现保存xhprof数据以及展示数据的UIxhgui - 另一个保存xhprof数据以及展示数据的UIBlackfire.io - 一个低开销的代码探查器Kint - 一个调试和性能分析的工具
构建工具
项目构建和自动化工具
Go - 一个简单的PHP构建工具Bob - 一个简单的项目自动化工具Phake - 一个PHP克隆库Box - 用来构建PHAR文件的工具Phing - 依据Apache Ant的PHP项目构建系统
任务运行器
自动运行任务的库
Task - 依据Grunt和Gulp的纯PHP任务运行器Robo - 面向对象的PHP任务运行器Bldr - 构建在Symfony组件上的PHP任务运行器
导航
构建导航结构的工具
KnpMenu - 一个菜单库Cartographer - 一个站点地图生成库
资源管理
用于管理、压缩和最小化网站资源的工具
Assetic - 一个资源管理的管道库Pipe - 另一个资源管理的管道库Munee - 一个资源优化库JShrink - 一个Javascript的压缩库Puli - 一个检测资源绝对路径的库
地理定位
使用经纬度编码地址的库
GeoCoder - 一个地理编码库GeoTools - 一个地理工具相关的库PHPGeo - 一个简单的地理库GeoJSON - 一个GeoJSON的实现
日期与时间
处理日期和时间的库

Carbon - 一个简单的日期时间API扩展ExpressiveDate - 另一个日期时间API扩展CalendR - 一个日历管理的库
事件
事件驱动或非阻塞事件循环实现的库
React - 一个事件驱动的非阻塞I/O库Rx.PHP - 一个反应扩展库phpsocket.ioRatchet - 一个Web套接字库Hoa WebSocket - 另一个Web套接字库Elephant.io - 另一个Web套接字库Hoa EventSource - 一个事件源库Evenement - 一个事件调度库Event - Event package for your app and/or domain.Cake Event - 一个事件调度类库Broadway - 一个事件源和CQRS库
日志
用于生成和处理日志文件的库
Monolog - 一个综合的日志类库KLogger - 一个易于使用的PSR-3日志类Analog - 一个机遇闭包的微型日志包SeasLog - 一个高效的日志扩展
电子商务
用于支付和构建在线电子商务商店的库和应用
OmniPay - 一个多网关支付处理的框架Payum - 一个用于支付的抽象库Sylius - 一个开源的电子商务解决方案Thelia - 另一个开源的电子商务解决方案Money - PHP实现的Fowler金钱模式Sebastian Money - 一个处理货币价值的库Swap - 一个汇率库
处理PDF文件的库和软件
Snappy - 一个PDF和图像的生成库WKHTMLToPDF - 一个将HTML转换为PDF的工具PHPPdf - 一个将XML转化为PDF和图片的库
Office
Office套装的各种文档的处理库
PHPWord - 处理Word文档的库PHPExcel - 处理Excel文档的库PHPPowerPoint - 处理PPT幻灯片的库ExcelAnt - 操作Excel文档的库
数据库
使用对象关系映射或数据映射技术的数据库交互库
Doctrine - 一个完整的DBAL和ORMDoctrine Extensions - 一个Doctrine行为的扩展集合Propel - 一个快速的ORM,迁移和查询库Eloquent - Laravel 5 ORMLazyRecord - 一个快速的ORMBaum - 一个Eloquent的嵌套集合Spot2 - MySQL的ORM映射器RedBean - 一个轻量级、易配置的ORMPomm - 用于PostgreSQL的一个对象模型管理器ProxyManager - 用于数据映射生成代理对象的工具集合Cake ORM - 对象关系映射器, 实现了使用数据映射模式Medoo - 一个轻量级的加速开发的ORM
迁移
用于管理数据库模式和迁移的库
PHPMig - 一个迁移管理库Phinx - 一个数据库迁移管理库Migrations - 另一个迁移管理库Doctrine Migrations - 用于Doctrine的迁移库
非关系型数据库
处理NoSQL后端的库
MongoDBmongo-php-library - MongoDB 官方PHP库MongoQB - 一个MongoDB的查询构建库Monga - 一个MongoDB的抽象库mongodm - MongoDB ORMphp-mongo - PHP ODM for MongoDBRedisPredis - 一个功能完全的Redis库
队列
处理事件和任务队列的库
Pheanstalk - 一个Beanstalkd客户端库PHP AMQP - 一个纯PHP AMQP库Thumper - 一个RabbitMQ模式库Bernard - 一个多后端的抽象库php-resque - 基于redis的消息队列Gearman - 任务分发系统
搜索
在数据中建立索引和执行查询相关的库和软件
ElasticSearch PHP - 用于 ElasticSearch 的官方客户端库.Elastica - 另一个ElasticSearch的客户端库Solarium - Solr 的客户端库 .SphinxQL query builder - Sphinx 搜索引擎的查询库
命令行
构建命令行工具的库
symfony/console - Symfony命令行工作组件Boris - 一个微型的PHP REPLPsySH - 另一个PHP REPLPecan - 一个事件驱动,非阻塞的shellGetOpt - 一个命令行选择解析器OptParse - 另一个命令行选择解析器Commando - 一个简单的命令行选择解析器GetOptionKit - 同样还是一个命令行选择解析器Cron expression -计算cron运行日期的库ShellWrap - 一个简单的命令行包装库Hoa Console - 另一个命令行库Shunt -一个在多台远程机器上并行运行的命令行库Cilex - 构建命令行工具的小型框架CLImate - 构建命令行工具的框架Webmozart Console
定时任务
定时任务管理 crontab在 PHP 中的相关封装
Dispatcher - 基于Laravel的定时任务管理swoole-crontab - 基于swoole的定时器程序,支持秒级处理jobby - 一个 PHP 的定时任务管理器cronlingo - Express crontabs as human friendly phrases
身份验证
实现身份验证模式的库
Sentinel - 一个身份验证和授权的框架Sentinel Social - 一个用于社交网络身份验证的库Opauth - 提供了 OAuth 认证的支持,提供统一标准的访问方法OAutp Server - 一个OAutp身份验证服务器、资源服务器和客户端库OAutp Server - 一个OAutp服务器实现PHP oAuthLib - 另一个OAuth库TwitterOAuth - 一个Twitter OAuth库TwitterSDK - 一个经过完全测试的Twitter SDKHawk - 一个Hawk HTTP身份验证库HybridAuth - 一个开源的社交登录库Lock - 一个 Access Control Lists 系统库.OAuth 1.0 Client - 一个 OAuth 1.0 客户端库.OAuth 2.0 Client - 一个 OAuth 2.0 客户端库.Sentry - 认证和授权系统EvaOAuth - 统一接口的 OAuth 登录 PHP 类库JSON Web Token- JSON网络令牌库php-jwtjwtjose - JSON签名和加密的库slim-jwt-authjwt-auth
标记
处理标记的库
Decoda - 一个轻量级的标记解析库PHP Markdown - Markdown解析器CommonMark PHP - 一个支持 CommonMark spec 的Markdown解析器.Parsedown - 一个Markdown解析器Ciconia - 一个支持Github风格的Markdown解析器Cebe Markdown - 一个快速、可扩展的Markdown解析器HTML5 PHP - 一个HTML5解析和序列化的库Emoji - 一个简单的处理emoji的类库php-emoji - 一个emoji表情转换库
字符串
解析和操纵字符串的库
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字符串的库Device Detector - 另一个解析UA字符串的库Mobile-Detect - 一个轻量级的检测移动设备的库Browser - 检测关于用户的浏览器环境
数字
处理数字的库
Numbers PHP - 一个处理数字的库Math - 处理较大数字的库ByteUnits - 一个在二进制和测量系统中解析、格式化和转换字节单位的库PHP Units of Measure - 一个测量单位间转换的库PHP Conversion - 另一个测量单位间转换的库LibPhoneNumber for PHP - PHP实现的Google电话号码处理系统库hashids.php - 用来把整数生成唯一字符串构建库Negotiation - 一个内容协商库Drest -一个将Doctrine实体展现为REST资源结点的库Restler - 一个将PHP方法展现为RESTful web API的轻量级框架fractal - [最佳实践]数据返回的统一化处理
缓存
缓存数据的库
Alternative PHP Cache - PHP的开源操作码缓存Doctrine Cache - 一个缓存库.Zend Cache - 另一个缓存库Cake Cache - 一个用于缓存的库Stash - 另一个缓存库CacheTool - 一个清除APC/opcode缓存的命令行工具PhpFastCache - PHP 缓存库
数据结构和存储
实现数据结构和存储技术的库
Ardent - 一个数据结构库PHP Collections - 一个简单的集合库Serializer - 用于序列化和反序列化数据的库Zend Serializer - 另一个用于序列化和反序列化数据的库PHP Object Storage - 一个用于对象存储的库Fractal - 一个将复杂数据结构转换为JSON输出的库Totem - 一个管理和创建数据修改集的库PINQ - PHP实时Linq库JsonMapper - 一个将内嵌JSON结构映射到PHP类上的库Cake Collection - 一个简单的集合库
通知
关于通知的库
Nod - 一个通知库Notificato - 一个处理推送消息的库Notification Pusher - 设备推送通知的独立库Notificator - 一个轻量级通知库
部署
用于项目部署的库
Pomander - 一个PHP应用的部署工具Rocketeer - PHP的快速和简单部署器Envoy - 使用PHP运行SSH任务的工具Plum - 一个部署库Deployer - 一个部署工具walle-web - 一个开源的web代码发布管理系统
国际化和本地化
用于国际化和本地化的库
Aura IntlCake I18n - 翻译和本地化消息
第三方API
访问第三方API的库
mailgun-php - Mailgun's Official SDK for PHP
扩展
帮助构建PHP扩展的库
Zephir - 用于开发PHP扩展的一种在PHP和C++间的编译语言PHP CPP - 一个用于开发PHP扩展的C++库
PHP 安装
帮助安装和管理PHP
HomeBrew - 一个OSX的包管理工具HomeBrew PHP - HomeBrew中PHP的安装包PHP OSX - 一个OSX中的PHP安装器PHP Brew - 一个PHP版本管理工具和安装器PHP Env - 另一个PHP版本工具PHP Switch - 另一个PHP版本工具PHP Build - 另一个PHP版本工具VirtPHP - 一个创建和管理分离的PHP环境的工具
开发环境
创建沙箱开发环境的软件和工具
Vagrant - 一个轻便的创建开发环境的工具Ansible - 一个简单的业务流程框架Puppet - 服务器自动化框架和应用PuPHPet - 一个用于构建PHP开发虚拟机工具Protobox - 另一个用于构建PHP开发虚拟机工具Phansible - 另一个用于构建PHP开发虚拟机工具centstead - Laravel local development environment base on vagrant and homestead
虚拟机
替代的PHP虚拟机
HHVM - Facebook 开源的PHP虚拟机HippyVM - 另一个PHP虚拟机
开发工具
支持PHP的IDE
NetbeansEclipse for PHP DevelopersPhpStorm
Web 应用程序
基于Web的应用程序和工具
3V4L - online PHP shellDBV - 数据库版本控制应用程序PHP Queue - 管理队列的后端程序MailCatcher - 一个接受和查看邮件的程序Cachet - 一个开源的网站状态展示系统phpRedisAdmin - Redis 管理工具phpPgAdmin - PostgreSQL管理工具phpMyAdmin - MySQL管理工具rockmongo - MongoDB管理工具
基础设施
提供PHP应用程序和服务的基础设施

appserver.io - 基于PHP的多线程应用程序服务器
其他
不属于以上分类的有用的类库和工具
pinyin - 汉字转拼音的库Pinyin - 汉字转拼音的库class.upload.php - 文件上传处理类php-paginator - 分页处理类Underscore.php - Underscore.js的PHP实现Flexihash - 一致性hash库Eden - 一个PHP快速开发类库,它包含很多组件用来自动加载、事件驱动、文档系统、缓存、模板、国际化、数据库、web服务、支付网关、装载和云服务技术。html-parser - html解析工具PHPCrawl - PHP的爬虫框架Tig - 命令行下的 Git 浏览器


