Awesome PHP

一个PHP资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等等

贡献

详细内容请查看贡献代码管理.

目录

Composer源 Composer Repositories

Composer源

依赖管理 Dependency Management

依赖和包管理库

其他的依赖管理 Dependency Management Extras

其他的相关依赖管理

  • Composed - 一个在运行时解析你项目Composer环境的库
  • Composer Merge Plugin - 一个用于合并多个composer.json文件的Composer插件
  • Prestissimo - 一个开启并行安装进程的Composer插件
  • Satis - 一个静态Composer存储库的生成器
  • tooly - 一个在项目中使用Composer管理PHAR文件的库
  • Toran Proxy - 一个静态Composer存储库和代理

框架 Frameworks

Web开发框架

  • Aura Framework - 一个独立的组件框架
  • CakePHP - 一个快速应用程序开发框架 (CP)
  • Laravel 5 - 另一个PHP框架 (L5)
  • Nette - 另一个由个体组件组成的框架
  • Phalcon - 通过C扩展实现的框架
  • PPI Framework 2 - 一个互操作性框架
  • Symfony - 一个独立组件组成的框架 (SF)
  • Yii2 - 另一个PHP框架
  • Zend Framework 2 - 另一个由独立组件组成的框架 (ZF2)
  • Ice - 另一个通过C扩展实现的简单快速的PHP框架

其他框架 Framework Extras

其他Web开发框架

框架组件 Components

来自web开发框架的独立组件

微型框架 Micro Frameworks

微型框架和路由

  • Bullet PHP - 用于构建REST APIs的微型框架
  • Lumen - 一个Laravel的微型框架
  • Radar - 一个PHP的Action-Domain-Responder的实现
  • Slim - 另一个简单的微型框架

其他微型框架 Micro Framework Extras

其他相关的微型框架和路由

路由 Routers

处理应用路由的库

  • Aura.Router - 一个全功能的路由库
  • Fast Route - 一个快速路由的库
  • Klein - 一个灵活的路由的库
  • Pux - 另一个快速路由的库
  • Route - 一个基于Fast Route的路由的库

模板 Templating

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

  • Aura.View - 提供TemplateView和TwoStepView,支持partials, sections和helpers
  • Foil - 另一个原生PHP模板库
  • MtHaml - 一个HAML模板语言的PHP实现
  • Mustache - 一个Mustache模板语言的PHP实现
  • PHPTAL - 一个TAL模板语言的PHP实现
  • Plates - 一个原生PHP模板库
  • Smarty - 一个模板引擎
  • Twig - 一个全面的模板语言
  • Tale Jade - Jade模版语言的PHP实现

静态站点生成器 Static Site Generators

用来生成web页面的预处理内容的工具

  • Couscous - 一个将Markdown转化为漂亮的网站的工具
  • Sculpin - 转换Markdown和Twig为静态HTML的工具
  • Spress - 一个能够将Markdown和Twig转化为HTML的可扩展工具

超文本传输协议 HTTP

用于HTTP的库

  • Buzz - 另一个HTTP客户端
  • Guzzle - 一个全面的HTTP客户端
  • HTTPFul - 一个链式HTTP库
  • HTTPlug - 一个没有绑定特定实现的HTTP客户端的抽象
  • PHP VCR - 一个录制和重放HTTP请求的库
  • Requests - 一个简单的HTTP库
  • Retrofit - 一个能轻松创建REST API客户端的库
  • zend-diactoros - PSR-7 HTTP消息实现

爬虫 Scraping

用于网站爬取的库

  • Embed -  一个从web服务或网页中提取的信息的工具
  • Goutte - 一个简单的web爬取器
  • PHP Spider - 一个可配置和可扩展的PHP web爬虫

中间件 Middlewares

使用中间件构建应用程序的库

  • Expressive - 基于PSR-7的Zend中间件
  • PSR7-Middlewares - 灵感来源于方便的中间件
  • Relay - 一个PHP 5.5 PSR-7的中间件调度器
  • Stack - 一个用于Silex/Symfony的可堆叠的中间件的库
  • zend-stratigility - 基于PHP PSR-7之上的中间件之上

网址 URL

解析URL的库

电子邮件 Email

发送和解析邮件的库

文件 Files

文件处理和MIME类型检测的库

流 Streams

处理流的库

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

依赖注入 Dependency Injection

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

  • Aura.Di - 一个依赖注入容器
  • Acclimate - 一个依赖注入容器和服务定位的通用接口
  • Auryn - 一个递归的依赖注入容器
  • Container - 另一个可伸缩的依赖注入容器
  • Disco - 一个兼容PSR-11基于annotation的依赖注入容器
  • PHP-DI - 一个支持自动装配和PHP配置的依赖注入容器
  • Pimple - 一个小的依赖注入容器
  • Symfony DI - 一个依赖注入容器组件 (SF2)

图像 Imagery

处理图像的库

测试 Testing

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

  • Alice - 富有表现力的一代库
  • AspectMock - 一个PHPUnit/Codeception的模拟框架。
  • Atoum - 一个简单的测试库
  • Behat - 一个行为驱动开发(BDD)测试框架
  • Codeception - 一个全栈测试框架
  • DBUnit - 一个PHPUnit的数据库测试库
  • Faker - 一个伪数据生成库
  • HTTP Mock - 一个在单元测试模拟HTTP请求的库
  • Kahlan - 全栈Unit/BDD测试框架,内置stub,mock和代码覆盖率的支持
  • Mink - Web验收测试
  • Mockery - 一个用于测试的模拟对象的库
  • ParaTest - 一个PHPUnit的并行测试库
  • Peridot - 一个事件驱动开发的测试框架
  • Phake - 另一个用于测试的模拟对象的库
  • Pho - 另一个行为驱动开发测试框架
  • PHP-Mock - 一个基于PHP函数的模拟库
  • PHPSpec - 一个基于功能点设计的单元测试库
  • PHPT - 一个使用PHP本身的测试工具
  • PHPUnit - 一个单元测试框架
  • Prophecy - 一个可选度很高的模拟框架
  • VFS Stream - 一个用于测试的虚拟文件系统流的包装器

持续集成 Continuous Integration

持续集成的库和应用

  • CircleCI - 一个持续集成平台
  • GitlabCi - 使用GitLab CI测试、构建、部署你的代码,像TravisCI
  • Jenkins - 一个PHP支持的持续集成平台
  • JoliCi - 一个用PHP编写的由Docker支持的持续集成的客户端
  • PHPCI - 一个PHP的开源的持续集成平台
  • SemaphoreCI - 一个开放源码和私人项目的持续集成平台
  • Shippable - 一个基于开源和私人项目持续集成平台的docker
  • Travis CI - 一个持续集成平台
  • Wercker - 一个持续集成平台

文档 Documentation

生成项目文档的库

  • APIGen - 另一个API文档生成器
  • daux.io - 一个使用Markdown文件的文档生成器
  • PHP Documentor 2 - 一个API文档生成器
  • phpDox - 一个PHP项目的文档生成器(不限于API文档)
  • Sami - 一个API文档生成器

安全 Security

生成安全的随机数,加密数据,扫描漏洞的库

  • Halite - 一个简单的使用libsodium的加密库
  • HTML Purifier - 一个兼容标准的HTML过滤器
  • IniScan - 一个扫描PHP INI文件安全的库
  • Optimus - 基于Knuth乘法散列方法的身份混淆工具
  • PHP Encryption - 一个安全的PHP加密库
  • PHP SSH - 一个试验的面向对象的SSH包装库
  • PHPSecLib - 一个纯PHP安全通信库
  • random_compat - PHP 5.x 支持random_bytes()random_int()
  • RandomLib - 一个生成随机数和字符串的库
  • SensioLabs Security Check - 一个为检查Composer依赖提供安全建议的web工具
  • TCrypto - 一个简单的键值加密存储库
  • VAddy - 一个持续安全的web应用测试平台
  • Zed - 一个集成的web应用渗透测试工具

密码 Passwords

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

代码分析 Code Analysis

分析,解析和处理代码库的库和工具

代码质量 Code Quality

管理代码质量、格式化和lint的库

静态分析 Static Analysis

PHP代码静态分析的库

  • Exakat - 一个PHP的静态分析引擎
  • Mondrian - 使用图论的代码分析工具
  • phan - 一个基于PHP 7+和php-ast扩展的静态分析器
  • PHPCompatibility - 一个PHP CodeSniffer的兼容性检查器
  • PhpDependencyAnalysis - 一个创建可定制依赖图的工具
  • PHP Metrics - 一个静态测量库
  • PHP Migration - 一个PHP版本升级的静态分析库
  • PHPStan - 一个PHP静态分析工具
  • Pslam - 一个用于在PHP应用程序中查找错误的静态分析工具

Architectural Architectural

相关的设计模式库,组织代码编程的方法和途径

  • Design Patterns PHP - 一个使用PHP实现的设计模式存储库
  • Finite - 一个简单的PHP有限状态机
  • Functional PHP - 一个函数式编程库
  • Iter - 一个使用生成器提供迭代原语的库
  • Patchwork - 一个重新定义用户的函数库
  • Pipeline - 一个管道模式的实现
  • RulerZ - 一个强大的规则引擎和规范模式的实现

调试和分析 Debugging and Profiling

调试和分析代码的库和工具

  • APM - 一个收集SQLite/MySQL/StatsD错误信息和统计信息的监控扩展
  • Barbushin PHP Console - 另一个使用Google Chrome的web调试控制台
  • Blackfire.io - 一个低开销的代码分析器
  • Kint - 一个调试和分析工具
  • PHP Console - 一个web调试控制台
  • PHP Debug Bar - 一个调试工具栏
  • PHPBench - 一个基准测试框架
  • Tideways.io - Monitoring and profiling tool
  • Tracy - A一个简单的错误检测,写日志和时间测量库
  • xDebug - 一个调试和分析PHP的工具
  • XHProf - 一个最初由Facebook开发的分析工具
  • Z-Ray - 一个调试和配置Zend服务器的工具

构建工具 Build Tools

项目构建和自动化工具

  • Box - 一个构建PHAR文件的工具
  • Construct - 一个PHP项目的生成器
  • Phing - 一个灵感来自于Apache Ant的PHP项目构建系统

任务运行器 Task Runners

自动运行任务的库

  • Bldr - 一个构建在Symfony组件上的PHP任务运行器
  • Jobby - 一个没有修改crontab的PHP定时任务管理器
  • Robo - 一个面向对象配置的PHP任务运行器
  • Task - 一个灵感来源于Grunt和Gulp的纯PHP任务运行器

导航 Navigation

构建导航结构的工具

资源管理 Asset Management

管理,压缩和最小化web站点资源的工具

  • JShrink - 一个JavaScript的最小化库
  • Munee - 一个资源优化库
  • Puli - 一个检测资源绝对路径的库
  • BowerPHP - Bower的一个PHP实现,一个web包管理工具

地理位置 Geolocation

地理编码地址和使用纬度经度的库

日期和时间 Date and Time

处理日期和时间的库

  • CalendR - 一个日历管理库
  • Carbon - 一个简单的日期时间API扩展
  • Chronos - 一个支持可变和不可变日期时间的DateTime API扩展
  • Moment.php - 灵感来源于Moment.js的PHP DateTime处理库,支持国际化
  • Yasumi - 一个帮助你计算节日日期和名称的库

事件 Event

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

日志 Logging

生成和处理日志文件的库

  • Monolog - 一个全面的日志工具

电子商务 E-commerce

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

  • Money - 一个Fowler金钱模式的PHP实现
  • OmniPay - 一个框架混合了多网关支付处理的库
  • Payum - 一个支付抽象库
  • Shopware - 一个可高度定制的电子商务软件
  • Swap - 一个汇率库
  • Sylius - 一个开源的电子商务解决方案

PDF PDF

处理PDF文件的库和软件

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

Office Office

Libraries for working with office suite documents.

数据库 Database

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

  • Atlas.Orm - 一个PHP持久化模型数据映射的实现
  • Aura.Sql - 一个使用PDO的ORM
  • Aura.SqlQuery - 支持MySQL, PostgreSQL, SQLite和Microsoft SQL Server的ORM
  • Baum - 一个Eloquent的嵌套集实现
  • Cake ORM - 对象关系映射工具,利用DataMapper模式实现 (CP)
  • Doctrine Extensions - 一个Doctrine行为扩展的集合
  • Doctrine - 一个全面的DBAL和ORM
  • Eloquent - 一个简单的ORM(L5)
  • LazyRecord - 一个简单、可扩展、高性能的ORM
  • Pomm - 一个PostgreSQL对象模型管理器
  • Propel - 一个快速的ORM,迁移库和查询构架器
  • ProxyManager - 一个为数据映射生成代理对象的工具集
  • RedBean - 一个轻量级,低配置的ORM
  • Spot2 - 一个MySQL的ORM映射器

迁移 Migrations

帮助管理数据库模式和迁移的库

  • Doctrine Migrations - 一个Doctrine的迁移库
  • Migrations - 一个迁移管理库
  • Phinx - 另一个数据库迁移的管理库
  • PHPMig - 另一个迁移管理库
  • Ruckusing - 基于PHP下ActiveRecord的数据库迁移,支持MySQL, Postgres, SQLite

NoSQL NoSQL

处理NoSQL后端的库

  • PHPMongo - 一个MongoDB ORM.
  • Predis - 一个功能完整的Redis库

队列 Queue

处理事件和任务队列的库

搜索 Search

在数据上索引和执行查询的库和软件

命令行 Command Line

关于命令行工具的库

  • Aura.Cli - 一个命令行库
  • Boris - 一个微型PHP REPL
  • Cilex - 一个构建命令行工具的微型框架
  • CLI Menu - 一个构建CLI菜单的库
  • CLIFramework - 一个支持完全zsh/bash、子命令和选项约束的命令行框架,这也归功于phpbrew
  • CLImate - 一个输出带颜色的和特殊格式的命令行库
  • Commando - 另一个简单的命令行选择解析器
  • Cron Expression - 一个计算cron运行日期的库
  • GetOpt - 一个命令行选择解析器
  • GetOptionKit - 另一个命令行选择解析器
  • Hoa Console - 另一个命令行库
  • PsySH - 另一个PHP REPL
  • ShellWrap - -一个简单的命令行包装库

身份验证和授权 Authentication and Authorization

实现身份验证和授权的库

标记 Markup

处理标记的库

字符串 Strings

解析和处理字符串的库

  • Agent - 一个基于Mobiledetect的桌面/手机端user agent解析库
  • ANSI to HTML5 - 一个将ANSI转化为HTML5的库
  • Color Jizz - 处理和转换颜色的库
  • Device Detector - 另一个解析user agent字符串的库
  • Hoa String - 另一个UTF-8字符串库
  • Jieba-PHP - Python的jieba的PHP端口,自然语言处理的中文文本分词
  • Mobile-Detect - 一个用于检测移动设备的轻量级PHP类(包括平板电脑)
  • Patchwork UTF-8 - 一个处理UTF-8字符串的便携库
  • Slugify - 转换字符串到slug的库
  • SQL Formatter - 一个格式化SQL语句的库
  • Stringy - 一个多字节支持的字符串处理库
  • UA Parser - 一个解析user agent字符串的库
  • URLify - 一个Django中URLify.js的PHP版本
  • UUID - 生成UUIDs的库

数字 Numbers

处理数字的库

过滤和验证 Filtering and Validation

过滤和验证数据的库

API API

开发REST-ful API的库和web工具

  • API Platform - 暴露出REST API的项目,包含JSON-LD, Hydra格式
  • Apigility - 一个使用Zend Framework 2构建的API构建器
  • Drest - 一个将Doctrine实体暴露为REST资源节点的库
  • HAL - 一个超文本应用语言(HAL)构建库
  • Hateoas - 一个HOATEOAS REST web服务库
  • Negotiation - 一个内容协商库
  • Restler - 一个将PHP方法暴露为RESTful web API的轻量级框架
  • wsdl2phpgenerator - 一个从SOAP WSDL文件生成PHP类的工具

缓存 Caching

缓存数据的库

数据结构和存储 Data Structure and Storage

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

  • Cake Collection - 一个简单的集合库 (CP)
  • Collections - 一个PHP的集合抽象库
  • Fractal - 一个转换复杂数据结构到JSON输出的库
  • Ginq - 另一个基于.NET实现的PHP的LINQ库
  • JsonMapper - 一个将内嵌JSON结构映射为PHP类的库
  • Knapsack - 一个集合的库,灵感来自Clojure的相关库
  • PINQ - 一个基于.NET实现的PHP的LINQ(Language Integrated Query)库
  • Porter - 数据导入的抽象框架
  • Serializer - 一个序列化和反序列化数据的库
  • YaLinqo - 另一个PHP的LINQ库
  • Zend Serializer - 另一个序列化和反序列化数据的库 (ZF2)

通知 Notifications

处理通知软件的库

  • JoliNotif - 一个跨平台的桌面通知库(支持Growl, notify-send, toaster等)
  • Notification Pusher - 一个设备推送通知的独立库
  • Notificato - 一个处理推送通知的库
  • Notificator - 一个轻量级的通知库
  • Php-pushwoosh - 一个使用Pushwoosh REST Web服务轻松推送通知的PHP库

部署 Deployment

项目部署库

  • Deployer - 一个部署工具
  • Envoy - 一个用PHP运行SSH任务的工具
  • Rocketeer - PHP世界里的一个快速简单的部署器

国际化和本地化 Internationalisation and Localisation

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

  • Aura.Intl - 一个国际化的库
  • Cake I18n - 消息国际化和日期和数字的本地化 (CP)

第三方API Third Party APIs

访问第三方API的库

扩展 Extensions

帮助构建PHP扩展的库

  • PHP CPP - 一个开发PHP扩展的C++库
  • Zephir - 用于开发PHP扩展,且介于PHP和C++之间的编译语言

杂项 Miscellaneous

创建一个开发环境的软件

PHP安装 PHP Installation

在你的电脑上帮助安装和管理PHP的工具

  • HomeBrew PHP - 一个HomeBrew的PHP通道
  • HomeBrew - 一个OSX包管理器
  • PHP Brew - 一个PHP版本管理和安装器
  • PHP Build - 另一个PHP版本安装器
  • PHP OSX - 一个OSX下的PHP安装器
  • VirtPHP - 一个创建和管理独立PHP环境的工具

开发环境 Development Environment

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

  • Ansible - 一个非常简单的编制框架
  • Phansible - 一个用Ansible构建PHP开发虚拟机的web工具
  • Protobox - 另一个构建PHP开发虚拟机的web工具
  • PuPHPet - 一个构建PHP开发虚拟机的web工具
  • Puppet - 一个服务器自动化框架和应用
  • Vagrant - 一个便携的开发环境工具
  • Docker - 一个容器化的平台

虚拟机 Virtual Machines

相关的PHP虚拟机

  • Hack - 一个PHP进行无缝操作的HHVM编程语言
  • HHVM - Facebook出品的PHP虚拟机,Runtime和JIT

文本编辑器和IDE Text Editors and IDEs

支持PHP的文本编辑器和集成开发环境(IDE)

Web应用 Web Applications

基于Web的应用和工具

  • 3V4L - 一个在线的PHP和HHVM shell
  • DBV - 一个数据库版本控制应用
  • PHP Queue - A一个管理后端队列的应用
  • MailCatcher - 一个抓取和查看邮件的web工具
  • Cachet - 开源状态页面系统
  • phpRedisAdmin - 一个用于管理Redis数据库的简单web界面
  • phpMyAdmin - 一个MySQL/MariaDB的web界面
  • Adminer - 一个数据库管理工具
  • Grav - 一个现代的flat-file的CMS
  • Lychee - 一个易于使用和好看的照片管理系统

基础架构 Infrastructure

提供PHP应用和服务的基础架构

  • appserver.io - 一个用PHP写的多线程的PHP应用服务器
  • php-pm - 一个PHP应用的进程管理器、修改器和负载平衡器

PHP网站 PHP Websites

PHP相关的有用的网站

其他网站 Other Websites

web开发相关的有用网站

PHP书籍 PHP Books

PHP相关的非常好的书籍

其他书籍 Other Books

与一般计算和web开发相关的书

PHP视频 PHP Videos

PHP相关的非常不错的视频

PHP播客 PHP Podcasts

专注于PHP话题的博客

  • PHP Town Hall - 一个随意的Ben Edmunds和Phil Sturgeon的PHP播客
  • PHP Roundtable - PHP Roundtable是一个讨论PHP开发者关心话题的临时聚会

PHP阅读 PHP Reading

PHP相关的阅读资料

PHP内核阅读 PHP Internals Reading

阅读PHP内核或性能相关的资料

PHP杂志 PHP Magazines

有趣的PHP相关的杂志