awesome-php
收集整理一些常用的PHP类库, 资源以及技巧. 以便在工作中迅速的查找所需...
- 这个列表中的内容有来自 awesome-php 的翻译, 有来自开发者周刊以及个人的积累等.
 - 一个前端组件的列表 awesome-frontend 推荐
 
学习资源
PHP相关的有参考价值的社区,博客,网站,文章,书籍,视频等资源
- PHP网站(PHP Websites)
 
| 开源库 | 说明 | 
|---|---|
| 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类库检索 | 
- 其他网站(Other Websites)
 
| 开源库 | 说明 | 
|---|---|
| [The Open Web Application Security Project (OWASP) | 一个开源软件安全社区 | 
| WebSec IO | 一个web 安全社区 | 
| Semantic Versioning | 语义化版本 | 
| Atlassian Git Tutorials | 一系列的Git教程 | 
| Servers for Hackers | 有关服务器运维相关 | 
- PHP书籍(PHP Books)
 
| 开源库 | 说明 | 
|---|---|
| Modern PHP | 作者是PHP 之道 的发起人和 Slim框架 的作者 | 
| Modern PHP(中文版) | |
| PHP Pandas | 
- 其他书籍(Other Books)
 
| 开源库 | 说明 | 
|---|---|
| The Linux Command Line | Linux 命令行教程 | 
依赖管理( Dependency Management )
用于依赖管理的包和框架
| 开源库 | 说明 | 
|---|---|
| Composer | 一个包和依赖管理器. | 
| Composer Installers | 一个多框架Composer库安装器 | 
| pickle | PHP扩展安装器 | 
| Melody | A tool to build one file Composer scripts. | 
框架( 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 | 
组件( Components )
| 开源库 | 说明 | 
|---|---|
| Aura Components | 一个PHP5.4的组件包 | 
| Hoa Project | 一个PHP组件集合 | 
配置( Configuration )
加载配置文件的类库和扩展
| 开源库 | 说明 | 
|---|---|
| Yaconf | 一个高性能的配置管理扩展 | 
| config | 一个轻量级的配置加载器, 支持 PHP, INI, XML, JSON, YAML files | 
| Zend-config | 
微框架( Micro Frameworks )
微型框架和路由
| 开源库 | 说明 | 
|---|---|
| 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 微型高性能框架 | 
路由( 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](http://spress.yosymfony.com/ | ) | 
| Couscous | 将Markdown 文档转换成 HTML 发布到Github Page 的工具 | 
HTTP
用于HTTP和抓取网站的库
| 开源库 | 说明 | 
|---|---|
| Guzzle | 一个完整的HTTP客户端 | 
| Buzz | 另一个HTTP客户端 | 
| Requests | 一个简单的HTTP库 | 
| HTTPFul | 一个链式HTTP客户端 | 
| Goutte | 一个简单的Web抓取器 | 
| PHP VCR | 一个录制和回放HTTP请求的库 | 
| php-curl-class | PHP的Curl类 | 
中间件( Middlewares )
用于构建应用的类库的中间件
URL
解析URL的库
| 开源库 | 说明 | 
|---|---|
| Purl | 一个URL操作库 | 
| PHP Domain Parser | 一个本地的后缀解析器 | 
| Uri | 一个简单的URL操作库 | 
邮件( Email )
用于发送和解析Email的库
| 开源库 | 说明 | 
|---|---|
| SwiftMailer | 一个邮件程序的解决方案 | 
| PHPMailer | 另一个邮件程序的解决方案 | 
| Nette Mail | 一个简单优雅的邮件发送模块 | 
| Fetch | 一个IMAP库 | 
| Email Reply Parser | 一个邮件回复解析器库 | 
| Stampie | 关于邮件服务的库,比如SendGrid、PostMark、MailGun和Mandrill | 
| CssToInlineStyles | 邮件模板中一个内联的CSS库 | 
| Email Validator | 一个小巧的邮箱验证库 | 
文件操作( Files )
关于文件处理和MIME类型检查
| 开源库 | 说明 | 
|---|---|
| Gaufrette | 一个文件流的抽象层 | 
| Flysystem | 另一个文件流的抽象层 | 
| Canal | 一个检查互联网媒体类型的库 | 
| Apache MIME Types | 一个解析Apache MIME类型的库 | 
| Ferret | 一个MIME检测库 | 
| Hoa Mime | 另一个MIME检测库 | 
| Lurker | 一个资源跟踪库 | 
| PHP File Locator | 一个在大型项目中定位文件的库 | 
| PHP FFmpeg | 一个用于FFmpeg视频包装的库 | 
| CSV | 一个CSV数据操作库 | 
流( Stream )
处理流的库
| 开源库 | 说明 | 
|---|---|
| Streamer | 一个简单的面向对象流包装库 | 
依赖注入( Dependency Injection )
实现依赖注入设计模式的库
| 开源库 | 说明 | 
|---|---|
| Pimple | 一个小的依赖注入容器 | 
| container-interop | Containers interoperability | 
| Auryn | 另一个小的依赖注入容器 | 
| Container | 另一个灵活的依赖注入容器 | 
| PHP DI | 一个使用标注实现的依赖注入 | 
| Acclimate | 依赖注入容器和服务定位器的通用接口 | 
| Symfony DI | 一个的依赖注入组件(SF2) | 
| Twittee | |
| simple di container | |
| [Ding](https://github.com/marcelog/Ding | ) | 
图像( Imagery )
处理图像的库
| 开源库 | 说明 | 
|---|---|
| Imagine | 一个图像处理库 | 
| PHP Image Workshop | 另一个图像处理库 | 
| Intervention Image | 同样还是一个图像处理库 | 
| GIF Frame Extractor | 一个提取GIF动画帧信息的库 | 
| GIF Creator | 从多幅图片中创建GIF动画的库 | 
| Image With Text | 在图像中嵌入文本的库 | 
| Color Extractor | 从图像中提取颜色的库 | 
| Glide | 一个按需的图片处理库 | 
| Image Optimizer | 一个优化图片的库 | 
| PHPThumb | 缩略图处理库 | 
| phpqrcode | 二维码生成库 | 
| QrCode | 另一个二维码生成库 | 
测试( 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 )
用于生成安全的随机数、加密数据、扫描漏洞, 令牌的库
| 开源库 | 说明 | 
|---|---|
| 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应用的集成渗透测试工具 | 
| JSON Web Token | - JSON网络令牌库 | 
| php-jwt | |
| jwt | |
| jose | JSON签名和加密的库 | 
| php-ratelimiter | 
密码( Passwords )
处理和存储密码的库和工具
| 开源库 | 说明 | 
|---|---|
| Password Compat | 一个用于新的PHP5.5密码功能的兼容库 | 
| phpass | 一个便携式密码哈希框架 | 
| PHP Password Lib | 一个用于生成和验证密码的库 | 
| Password Policy | 一个PHP和JavaScript的密码规则库 @ | 
| Password Validator | 验证和升级密码哈希的库 @ | 
| Zxcvbn PHP | 一个基于Zxcvbn JS的PHP显示密码强度估计库 | 
| GenPhrase | 一个生成安全随机口令的库 | 
代码分析( Code Analysis )
用于分析、解析和操作代码库的工具
| 开源库 | 说明 | 
|---|---|
| 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 review | 
| PHP Error | 用于转换标准的 PHP 错误信息,主要用于开发过程中的调试 | 
结构( Architectural )
有关于设计模式,编程规范以及代码组织方式的库
| 开源库 | 说明 | 
|---|---|
| PHP Option | 一个PHP选项类型的库 | 
| Ruler | 一个简单的无状态的产生环境规则的引擎 | 
| Finite | 一个简单的PHP有限状态机 | 
| Compose | 一个功能组合库 | 
| Monad PHP | 一个简单Monad库 | 
| Patchwork | 一个重新定义用户的函数库 | 
| Galapagos | 语言转换进化 | 
| Design Patterns PHP | 一个使用PHP实现的设计模式实例库 | 
| Functional PHP | 一个函数式编程库 | 
| Lib Accessor | 一个简化访问的库 | 
| Iter | 一个使用生成器提供迭代原语的库 | 
调试和性能( 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 )
构建导航结构的工具
| 开源库 | 说明 | 
|---|---|
| KnpMenu | 一个菜单库 | 
| Cartographer | 一个站点地图生成库 | 
资源管理( Asset Management )
用于管理、压缩和最小化网站资源的工具
| 开源库 | 说明 | 
|---|---|
| Assetic | 一个资源管理的管道库 | 
| Pipe | 另一个资源管理的管道库 | 
| Munee | 一个资源优化库 | 
| JShrink | 一个JavaScript的压缩库 | 
| Puli | 一个检测资源绝对路径的库 | 
地理定位( Geolocation )
使用经纬度编码地址的库
| 开源库 | 说明 | 
|---|---|
| GeoCoder | 一个地理编码库 | 
| GeoTools | 一个地理工具相关的库 | 
| PHPGeo | 一个简单的地理库 | 
| GeoJSON | 一个GeoJSON的实现 | 
日期与时间( Date and Time )
处理日期和时间的库
| 开源库 | 说明 | 
|---|---|
| Carbon | 一个简单的日期时间API扩展 | 
| ExpressiveDate | 另一个日期时间API扩展 | 
| CalendR | 一个日历管理的库 | 
事件( Event )
事件驱动或非阻塞事件循环实现的库
| 开源库 | 说明 | 
|---|---|
| React | 一个事件驱动的非阻塞I/O库 | 
| Rx.PHP | 一个反应扩展库 | 
| Ratchet | 一个Web套接字库 | 
| Hoa WebSocket | 另一个Web套接字库 | 
| Elephant.io | 另一个Web套接字库 | 
| Hoa EventSource | 一个事件源库 | 
| Evenement | 一个事件调度库 | 
| Event | Event package for your app and/or domain. | 
| Cake Event | 一个事件调度类库 | 
| Broadway | 一个事件源和CQRS库 | 
日志( 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套装的各种文档的处理库
| 开源库 | 说明 | 
|---|---|
| PHPWord | 处理Word文档的库 | 
| PHPExcel | 处理Excel文档的库 | 
| PHPPowerPoint | 处理PPT幻灯片的库 | 
| ExcelAnt | 操作Excel文档的库 | 
数据库( 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 )
用于管理数据库模式和迁移的库
| 开源库 | 说明 | 
|---|---|
| PHPMig | 一个迁移管理库 | 
| Phinx | 一个数据库迁移管理库 | 
| Migrations | 另一个迁移管理库 | 
| Doctrine Migrations | 用于Doctrine的迁移库 | 
非关系型数据库( NoSQL )
处理NoSQL后端的库
MongoDB
开源库 说明 mongo-php-library MongoDB 官方PHP库 MongoQB 一个MongoDB的查询构建库 Monga 一个MongoDB的抽象库 mongodm MongoDB ORM php-mongo PHP ODM for MongoDB Redis
| 开源库 | 说明 | 
|---|---|
| Predis | 一个功能完全的Redis库 | 
队列( Queue )
处理事件和任务队列的库
| 开源库 | 说明 | 
|---|---|
| Pheanstalk | 一个Beanstalkd客户端库 | 
| PHP AMQP | 一个纯PHP AMQP库 | 
| Thumper | 一个RabbitMQ模式库 | 
| Bernard | 一个多后端的抽象库 | 
| php-resque | 基于redis的消息队列 | 
| Gearman | 任务分发系统 | 
搜索( Search )
在数据中建立索引和执行查询相关的库和软件
| 开源库 | 说明 | 
|---|---|
| ElasticSearch PHP | 用于 ElasticSearch 的官方客户端库. | 
| Elastica | 另一个ElasticSearch的客户端库 | 
| Solarium | Solr 的客户端库 . | 
| SphinxQL query builder | Sphinx 搜索引擎的查询库 | 
命令行( 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](github.com/webmozart/console | ) | 
定时任务( Crontab )
定时任务管理 crontab在 PHP 中的相关封装
| 开源库 | 说明 | 
|---|---|
| Dispatcher | 基于Laravel的定时任务管理 | 
| swoole-crontab | 基于swoole的定时器程序,支持秒级处理 | 
| jobby | 一个 PHP 的定时任务管理器 | 
| cronlingo | Express crontabs as human friendly phrases | 
身份验证( Authentication and Authorization )
实现身份验证模式的库
| 开源库 | 说明 | 
|---|---|
| Sentinel | 一个身份验证和授权的框架 | 
| Sentinel Social | 一个用于社交网络身份验证的库 | 
| Opauth | 提供了 OAuth 认证的支持,提供统一标准的访问方法 | 
| OAuth2 Server | 一个OAuth2身份验证服务器、资源服务器和客户端库 | 
| OAuth2 Server | 一个OAuth2服务器实现 | 
| PHP oAuthLib | 另一个OAuth库 | 
| TwitterOAuth | 一个Twitter OAuth库 | 
| TwitterSDK | 一个经过完全测试的Twitter SDK | 
| Hawk | 一个Hawk HTTP身份验证库 | 
| HybridAuth | 一个开源的社交登录库 | 
| Lock | 一个 Access Control Lists (ACL) 系统库. | 
| OAuth 1.0 Client | 一个 OAuth 1.0 客户端库. | 
| OAuth 2.0 Client | 一个 OAuth 2.0 客户端库. | 
| Sentry | 认证和授权系统 | 
| EvaOAuth | 统一接口的 OAuth 登录 PHP 类库 | 
标记( Markup )
处理标记的库
| 开源库 | 说明 | 
|---|---|
| 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表情转换库 | 
字符串( 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 )
处理数字的库
| 开源库 | 说明 | 
|---|---|
| Numbers PHP | 一个处理数字的库 | 
| Math | 处理较大数字的库 | 
| ByteUnits | 一个在二进制和测量系统中解析、格式化和转换字节单位的库 | 
| PHP Units of Measure | 一个测量单位间转换的库 | 
| PHP Conversion | 另一个测量单位间转换的库 | 
| LibPhoneNumber for PHP | PHP实现的Google电话号码处理系统库 | 
| hashids.php | 用来把整数生成唯一字符串(比如:通过加密解密id来隐藏真实id) | 
过滤和验证( Filtering ang Validation )
用于过滤和验证数据的库
| 开源库 | 说明 | 
|---|---|
| Filterus | 一个简单的PHP过滤库 | 
| Respect Validation | 一个简单的验证库 | 
| Valitron | 另一个数据验证库 | 
| Cake Validation | 另一个数据验证库 | 
| php-readability | 内容分析算法 | 
| Upload | 一个处理文件上传和验证的库 | 
| DMS Filter | 一个基于标注的过滤库 | 
| MetaYaml | 支持YAML、JSON和XML的一个模式验证库 | 
| ISO-codes | 验证不同ISO和ZIP编码的库 | 
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 )
缓存数据的库
| 开源库 | 说明 | 
|---|---|
| [Alternative PHP Cache (APC) | PHP的开源操作码缓存 | 
| Doctrine Cache | 一个缓存库. | 
| Zend Cache | 另一个缓存库 | 
| Cake Cache | 一个用于缓存的库 | 
| Stash | 另一个缓存库 | 
| CacheTool | 一个清除APC/opcode缓存的命令行工具 | 
| PhpFastCache | PHP 缓存库 | 
数据结构和存储( Data Structure and Storage )
实现数据结构和存储技术的库
| 开源库 | 说明 | 
|---|---|
| Ardent | 一个数据结构库 | 
| PHP Collections | 一个简单的集合库 | 
| Serializer | 用于序列化和反序列化数据的库 | 
| Zend Serializer | 另一个用于序列化和反序列化数据的库 | 
| PHP Object Storage | 一个用于对象存储的库 | 
| Fractal | 一个将复杂数据结构转换为JSON输出的库 | 
| Totem | 一个管理和创建数据修改集的库 | 
| PINQ | PHP实时Linq库 | 
| JsonMapper | 一个将内嵌JSON结构映射到PHP类上的库 | 
| Cake Collection | 一个简单的集合库 | 
通知( Notifications )
关于通知的库
| 开源库 | 说明 | 
|---|---|
| Nod | 一个通知库 | 
| Notificato | 一个处理推送消息的库 | 
| Notification Pusher | 设备推送通知的独立库 | 
| Notificator | 一个轻量级通知库 | 
部署( Deployment )
用于项目部署的库
| 开源库 | 说明 | 
|---|---|
| Pomander | 一个PHP应用的部署工具 | 
| Rocketeer | PHP的快速和简单部署器 | 
| Envoy | 使用PHP运行SSH任务的工具 | 
| Plum | 一个部署库 | 
| Deployer | 一个部署工具 | 
| walle-web | 一个开源的web代码发布管理系统 | 
国际化和本地化(Internationalisation and Localisation)
用于国际化(I18n)和本地化(L10n)的库
| 开源库 | 说明 | 
|---|---|
| [Aura Intl](https://github.com/auraphp/Aura.Intl | ) | 
| Cake I18n | 翻译和本地化消息 | 
第三方API( Third Party APIs )
访问第三方API的库
| 开源库 | 说明 | 
|---|---|
| mailgun-php | Mailgun's Official SDK for PHP | 
扩展( Extensions )
帮助构建PHP扩展的库
| 开源库 | 说明 | 
|---|---|
| Zephir | 用于开发PHP扩展的一种在PHP和C++间的编译语言 | 
| PHP CPP | 一个用于开发PHP扩展的C++库 z | 
PHP 安装(PHP Installation)
帮助安装和管理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环境的工具 | 
开发环境(Development Environment)
创建沙箱开发环境的软件和工具
| 开源库 | 说明 | 
|---|---|
| Vagrant | 一个轻便的创建开发环境的工具 | 
| Ansible | 一个简单的业务流程框架 | 
| Puppet | 服务器自动化框架和应用 | 
| PuPHPet | 一个用于构建PHP开发虚拟机工具 | 
| Protobox | 另一个用于构建PHP开发虚拟机工具 | 
| Phansible | 另一个用于构建PHP开发虚拟机工具 | 
虚拟机(Virtual Machines)
替代的PHP虚拟机
| 开源库 | 说明 | 
|---|---|
| HHVM | Facebook 开源的PHP虚拟机 | 
| HippyVM | 另一个PHP虚拟机 | 
开发工具(Integrated Development Environment)
支持PHP的IDE
| 开源库 | 说明 | 
|---|---|
| Netbeans | |
| Eclipse for PHP Developers | |
| PhpStorm | 
Web 应用程序(Web Applications)
基于Web的应用程序和工具
| 开源库 | 说明 | 
|---|---|
| 3V4L | Online PHP shell | 
| DBV | 数据库版本控制应用程序 | 
| PHP Queue | 管理队列的后端程序 | 
| MailCatcher | 一个接受和查看邮件的程序 | 
| Cachet | 一个开源的网站状态展示系统(如: status.github.com ) | 
| phpRedisAdmin | Redis 管理工具 | 
| phpPgAdmin | PostgreSQL管理工具 | 
| phpMyAdmin | MySQL管理工具 | 
| rockmongo | MongoDB管理工具 | 
基础设施(Infrastructure)
提供PHP应用程序和服务的基础设施
| 开源库 | 说明 | 
|---|---|
| appserver.io | 基于PHP的多线程应用程序服务器 | 
其他( Miscellaneous )
不属于以上分类的有用的类库和工具
| 开源库 | 说明 | 
|---|---|
| pinyin | 汉字转拼音的库 | 
| Pinyin | 汉字转拼音的库 | 
| class.upload.php | 文件上传处理类 | 
| php-paginator | 分页处理类 | 
| Underscore.php | Underscore.js的PHP实现 | 
| Flexihash | 一致性hash库 | 
| Eden | 一个PHP快速开发类库,它包含很多组件用来自动加载、事件驱动、文档系统、缓存、模板、国际化、数据库、web服务、支付网关、装载和云服务技术。 | 
| html-parser | html解析工具 | 
| PHPCrawl | PHP的爬虫框架 | 
二维码
| 开源库 | 说明 | 
|---|---|
| qr-code | 二维码 | 
参考资料
文章来源 - 文章来源