PHP

Awesome PHP

精选的令人赞叹的PHP库,资源和闪亮的清单.

Contributing and Collaborating

请参阅 CONTRIBUTING, CODE-OF-CONDUCTCOLLABORATING 有关详细信息.

Composer Repositories

Dependency Management

*用于依赖性和程序包管理的库.

Dependency Management Extras

*与依赖项管理有关的其他内容.

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

Frameworks

  • Web开发框架.*

  • Aura Framework -由独立组件构建的框架.

  • CakePHP -快速的应用程序开发框架(CP).
  • Laravel 6 -另一个PHP框架(L6).
  • Nette -由单独组件组成的另一个框架.
  • Phalcon -实现为C扩展的框架.
  • PPI Framework 2 -互操作性框架.
  • Symfony -由单个组件(SF)组成的框架.
  • Yii2 -另一个PHP框架.
  • Zend Framework 3 -由各个组件(ZF3)组成的框架.
  • Ice -作为C扩展提供的另一个简单快速的PHP框架.

Framework Extras

与Web开发框架有关的其他内容.

  • CakePHP CRUD -CakePHP的快速应用程序开发(RAD)插件.
  • Knp RAD Components -Symfony的一组快速应用程序开发(RAD)组件.

  • Backdrop -针对中小型企业和非营利组织的CMS(Drupal的分支).

  • Concrete5 -以最低的技术水平为目标的CMS.
  • Drupal -企业级CMS.
  • Grav -现代的平面文件CMS.
  • Joomla -另一个领先的CMS.
  • Magento -最受欢迎的电子商务平台.
  • WordPress -博客平台和CMS.
  • Moodle -开源学习平台.

Components

来自Web开发框架和开发组的独立组件.

Micro Frameworks

*微型框架和路由器.

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

Micro Framework Extras

*与微框架和路由器有关的其他内容.

Routers

*用于处理应用程序路由的库.

  • Aura.Router -功能齐全的路由库.
  • Fast Route -快速路由库.
  • Klein -灵活的路由器.
  • Pux -另一个快速路由库.
  • Route -建立在快速路由之上的路由库.

Templating

*用于模板化和词法化的库和工具.

  • Aura.View -使用PHP作为诱人的语言提供TemplateView和TwoStepView,并支持partial,section和helper.
  • Foil -另一个本地PHP模板库.
  • MtHaml -HAML模板语言的PHP实现.
  • Mustache -Mustache模板语言的PHP实现.
  • PHPTAL -的PHP实现 TAL 模板语言.
  • Plates -本机PHP模板库.
  • Smarty -补充PHP的模板引擎.
  • Twig -全面的模板语言.
  • Tale Jade -Jade模板语言的PHP实现.

Static Site Generators

  • Couscous -Couscous将Markdown文档变成漂亮的网站. 这是关于类固醇的GitHub Pages.
  • Sculpin -将Markdown和Twig转换为静态HTML的工具.
  • Spress -将Markdown和Twig转换为HTML的可扩展工具.

HTTP

使用HTTP的库.

Scraping

用于抓取网站的库.

  • DiDOM -超级快速的HTML抓取器和解析器.
  • Embed -任何Web服务或页面的信息提取器.
  • Goutte -简单的网页抓取工具.
  • Symfony Panther -用于PHP和Symfony的浏览器测试和Web爬网库.
  • PHP Spider -可配置和可扩展的PHP网络蜘蛛.

Middlewares

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

URL

*用于解析URL的库.

Email

用于发送和解析电子邮件的库.

Files

*用于文件操作和MIME类型检测的库.

Streams

用于处理流的库.

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

Dependency Injection

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

  • Aura.Di -可序列化的依赖项注入容器,具有构造函数和设置器注入,接口和特征识别,配置继承等更多内容.
  • Acclimate -依赖项注入容器和服务定位器的通用接口.
  • Auryn -递归依赖注入器.
  • Container -另一个灵活的依赖项注入容器.
  • Disco -与PSR-11兼容的基于注释的依赖项注入容器.
  • PHP-DI -支持自动装配的依赖项注入容器.
  • Pimple -一个很小的依赖项注入容器.
  • Symfony DI -依赖项注入容器组件(SF).

Imagery

用于处理图像的库.

Testing

*用于测试代码库和生成测试数据的库.

  • Alice -具表现力的灯具生成库.
  • AspectMock -PHPUnit / Codeception的模拟框架.
  • Atoum -一个简单的测试库.
  • Behat -行为驱动开发(BDD)测试框架.
  • Codeception -完整的堆栈测试框架.
  • Faker -伪造的数据生成器库.
  • HTTP Mock -用于在单元测试中模拟HTTP请求的库.
  • Kahlan -具有内置存根,模拟和代码覆盖支持的完整堆栈单元/ BDD测试框架.
  • Mink -网络验收测试.
  • Mockery -用于测试的模拟对象库.
  • ParaTest -PHPUnit的并行测试库.
  • Peridot -事件驱动的测试框架.
  • Phake -另一个用于测试的模拟对象库.
  • Pho -另一个行为驱动的开发测试框架.
  • PHP-Mock -用于内置PHP函数(例如time())的模拟库.
  • PHPSpec -按规格设计的单元测试库.
  • PHPT -PHP本身使用的测试工具.
  • PHPUnit -单元测试框架.
  • Prophecy -一个自以为是的模拟框架.
  • VFS Stream -用于测试的虚拟文件系统流包装器.

Continuous Integration

用于持续集成的库和应用程序.

  • CircleCI -持续集成平台.
  • GitlabCi -让GitLab CI测试,构建,部署代码. TravisCi喜欢.
  • Jenkins -具有以下功能的持续集成平台 PHP support.
  • JoliCi -用PHP编写并由Docker支持的持续集成客户端.
  • PHPCI -一个用于PHP的开源持续集成平台.
  • SemaphoreCI -开源和私有项目的持续集成平台.
  • Shippable -基于Docker的持续集成平台,用于开源和私有项目.
  • Travis CI -持续集成平台.
  • Setup PHP -适用于PHP的GitHub Action.

Documentation

用于生成项目文档的库.

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

Security

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

  • Halite -使用以下方法进行加密的简单库 libsodium.
  • HTML Purifier -符合标准的HTML过滤器.
  • IniScan -扫描PHP INI文件的安全性的工具.
  • Optimus -基于Knuth的乘法哈希方法进行ID混淆.
  • PHP Encryption -安全的PHP加密库.
  • PHP SSH -面向实验对象的SSH包装器库.
  • PHPSecLib -一个纯PHP安全通信库.
  • random_compat -PHP 5.x支持random_bytes()random_int()
  • RandomLib -用于生成随机数和字符串的库.
  • Symfony Security Monitoring -一种Web工具,用于检查您的Composer依赖项是否存在安全建议,以前称为“ SensioLabs安全检查”.
  • TCrypto -一个简单的加密键值存储库.
  • VAddy -用于Web应用程序的连续安全测试平台.
  • Zed -用于Web应用程序的集成渗透测试工具.

Passwords

用于处理和存储密码的库和工具.

Code Analysis

*用于分析,解析和操纵代码库的库和工具.

Code Quality

*用于管理代码质量,格式化和整理的库.

Static Analysis

*用于对PHP代码执行静态分析的库.

  • Exakat -用于PHP的静态分析引擎.
  • Deptrac -静态代码分析工具,可帮助强制实施有关软件层之间依赖性的规则.
  • Mondrian -使用图论的代码分析工具.
  • phan -基于PHP 7+和php-ast扩展的静态分析器.
  • PHP Architecture Tester -易于使用的PHP体系结构测试工具.
  • PHPCompatibility -用于PHP CodeSniffer的PHP兼容性检查器.
  • PhpDependencyAnalysis -创建可定制的依赖图的工具.
  • PHP Metrics -静态指标库.
  • PHP Migration -用于PHP版本迁移的静态分析器.
  • PHPStan -一个PHP静态分析工具.
  • Psalm -用于在PHP应用程序中查找错误的静态分析工具.

Architectural

*与设计模式,编程方法和组织代码方式有关的库.

Debugging and Profiling

*用于调试和分析代码的库和工具.

  • APM -监视扩展,将错误和统计信息收集到SQLite / MySQL / StatsD中.
  • Barbushin PHP Console -另一个使用Google Chrome浏览器的网络调试控制台.
  • Blackfire.io -低开销的代码分析器.
  • Kint -调试和性能分析工具.
  • PHP Console -Web调试控制台.
  • PHP Debug Bar -调试工具栏.
  • PHPBench -基准框架.
  • PHPSpy -低开销的采样分析器.
  • Tideways.io -监视和性能分析工具.
  • Tracy -一个简单的错误检测,日志记录和时间测量库.
  • xDebug -用于PHP的调试和配置文件工具.
  • XHProf -最初由Facebook开发的分析工具.
  • Z-Ray -用于Zend Server的调试和配置文件工具.

Build Tools

项目构建和自动化工具.

  • Box -用于构建PHAR文件的实用程序.
  • Construct -一个PHP项目/微包生成器.
  • Phing -受Apache Ant启发的PHP项目构建系统.

Task Runners

*用于自动化和运行任务的库.

  • Bldr -基于Symfony组件的PHP TaskRunner.
  • Jobby -一个无需修改crontab的PHP cron作业管理器.
  • Robo -具有面向对象配置的PHP TaskRunner.
  • Task -受Grunt和Gulp启发的纯PHP任务执行器.

用于构建导航结构的工具.

  • KnpMenu -菜单库.
  • Menu -灵活的菜单库,界面流畅.

Asset Management

用于管理,压缩和最小化网站资产的工具.

  • JShrink -一个JavaScript缩小程序库.
  • Munee -资产优化程序库.
  • Puli -用于确定资产绝对路径的库.
  • BowerPHP -Bower的PHP实现. Web的软件包管理器

Geolocation

用于对地址进行地理编码以及使用纬度和经度的库.

Date and Time

用于处理日期和时间的库.

  • CalendR -日历管理库.
  • Carbon -一个简单的DateTime API扩展.
  • Chronos -DateTime API扩展,支持可变和不可变的日期/时间.
  • Moment.php -Moment.js通过i18n支持启发了PHP DateTime处理程序.
  • Yasumi -可以帮助您计算假期的日期和名称的库.

Event

*由事件驱动或实现非阻塞事件循环的库. * Amp -事件驱动的非阻塞I / O库. * Broadway -事件源和CQRS库. * Cake Event -事件分配器库(CP). * Elephant.io -另一个Web套接字库. * Evenement -事件分配器库. * Event -重点关注域事件的事件库. * Hoa EventSource -事件源库. * Hoa WebSocket -另一个Web套接字库. * Prooph Event Store -事件源组件,用于保留事件消息 * PHP Defer -Golang的PHP延迟声明. * Ratchet -网络套接字库. * React -事件驱动的非阻塞I / O库. * RxPHP -反应性扩展库. * Swoole -一个事件驱动的异步和并发网络通信框架,以C语言编写,具有高性能的PHP. * Workerman -事件驱动的非阻塞I / O库.

Logging

*用于生成和使用日志文件的库.

E-commerce

*用于付款和建立在线电子商务商店的图书馆和应用程序.

  • Money -Fowler的money模式的PHP实现.
  • OmniPay -与框架无关的多网关支付处理库.
  • Payum -付款抽象库.
  • Shopware -高度可定制的电子商务软件
  • Swap -汇率库.
  • Sylius -开源电子商务解决方案.

PDF

*用于处理PDF文件的库和软件.

  • Dompdf -HTML到PDF转换器.
  • PHPPdf -用于从XML生成PDF和图像的库.
  • Snappy -PDF和图像生成库.
  • WKHTMLToPDF -一种将HTML转换为PDF的工具.

Office

用于处理Office套件文档的库.

  • PHPPowerPoint -用于处理Microsoft PowerPoint演示文稿的库.
  • PHPWord -用于处理Microsoft Word文档的库.
  • PHPSpreadsheet -用于读取和写入电子表格文件的纯PHP库(PHPExcel的后继).
  • Spout -以快速和可扩展的方式读写电子表格文件(CSV,XLSX和ODS).

Database

*用于使用对象关系映射(ORM)或数据映射技术与数据库进行交互的库.

  • Atlas.Orm -PHP中的持久性模型的数据映射器实现.
  • Aura.Sql -提供对本机PDO的扩展以及探查器和连接定位器.
  • Aura.SqlQuery -适用于MySQL,PostgreSQL,SQLite和Microsoft SQL Server的独立查询构建器.
  • Baum -Eloquent的嵌套集实现.
  • Cake ORM -使用DataMapper模式(CP)实现的对象关系映射器.
  • Doctrine Extensions -主义行为扩展的集合.
  • Doctrine -全面的DBAL和ORM.
  • Eloquent -一个简单的ORM(L6).
  • Pomm -PostgreSQL的对象模型管理器.
  • ProxyManager -一组实用程序,用于为数据映射器生成代理对象.
  • RedBean -轻量级,无需配置的ORM.
  • Spot2 -MySQL数据目录ORM.

Migrations

用于帮助管理数据库架构和迁移的库.

NoSQL

用于“ NoSQL”后端的库.

Queue

*用于处理事件和任务队列的库.

用于对数据建立索引并执行搜索查询的库和软件.

Command Line

*与命令行相关的库.

  • Aura.Cli -为命令行界面提供等效的request(Context)和response(Stdio)对象,包括Getopt支持,以及用于描述命令的独立Help对象.
  • 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的PHP桌面/移动用户代理解析器.
  • ANSI to HTML5 -ANSI到HTML5的转换器库.
  • Color Jizz -用于处理和转换颜色的库.
  • Device Detector -另一个用于解析用户代理字符串的库.
  • Hoa String -另一个UTF-8字符串库.
  • Jieba-PHP -Python的jieba的PHP端口. 中文文本分割,用于自然语言处理.
  • Mobile-Detect -用于检测移动设备(包括平板电脑)的轻量级PHP类.
  • Patchwork UTF-8 -用于处理UTF-8字符串的可移植库.
  • Portable UTF-8 -具有UTF-8安全替换方法的字符串处理库.
  • Slugify -将字符串转换为段的库.
  • SQL Formatter -用于格式化SQL语句的库.
  • Stringy -具有多字节支持的字符串处理库.
  • UA Parser -用于解析用户代理字符串的库.
  • URLify -Django的URLify.js的PHP端口.
  • UUID -用于生成UUID的库.

Numbers

用于处理数字的库.

Filtering and Validation

用于过滤和验证数据的库.

  • Assert -具有一组丰富的断言的验证库. 支持断言链接和惰性断言.
  • Aura.Filter -提供验证和清理对象和数组的工具.
  • Cake Validation -另一个验证库(CP).
  • Filterus -一个简单的PHP过滤库.
  • ISO-codes -一个用于根据许多国家/地区的ISO,国际金融,公共管理,GS1,图书行业,电话号码和邮政编码标准验证输入的库.
  • JSON Schema - 一种 JSON Schema 验证库.
  • MetaYaml -支持YAML,JSON和XML的架构验证库.
  • Respect Validation -一个简单的验证库.
  • Upload -用于处理文件上传和验证的库.
  • Valitron -另一个验证库.
  • Volan -另一个简化的验证库.

API

用于开发API的库和网络工具.

  • API Platform -在几分钟内公开包含JSON-LD,Hydra格式的超媒体REST API.
  • Apigility -使用Zend Framework 2构建的API构建器.
  • Drest -用于将Doctrine实体公开为REST资源端点的库.
  • HAL -超文本应用程序语言(HAL)构建器库.
  • Hateoas -HATEOAS REST Web服务库.
  • Restler -一个轻量级框架,用于将PHP方法公开为RESTful Web API.
  • wsdl2phpgenerator -从SOAP WSDL文件生成PHP类的工具.

Caching

Libraries for caching data.

Data Structure and Storage

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

  • Cake Collection -一个简单的收藏库(CP).
  • Fractal -用于将复杂的数据结构转换为JSON输出的库.
  • Ginq -另一个基于.NET的LINQ的PHP库.
  • JsonMapper -将嵌套的JSON结构映射到PHP类的库.
  • JSON Machine -使用简单的“ foreach”提供对巨大JSON的迭代
  • Knapsack -受Clojure序列启发的收藏库.
  • msgpack.php -的纯PHP实现 MessagePack 序列化格式.
  • PINQ -基于.NET的LINQ(语言集成查询)的PHP库.
  • Porter -数据导入抽象框架.
  • Serializer -用于序列化和反序列化数据的库.
  • YaLinqo -另一个用于PHP的LINQ对象.
  • Zend Serializer -另一个用于序列化和反序列化数据的库(ZF2).

Notifications

用于使用通知软件的库.

  • JoliNotif -用于桌面通知的跨平台库(支持Growl,通知发送,烤面包机等)
  • Notification Pusher -用于设备推送通知的独立库.
  • Notificato -用于处理推送通知的库.
  • Notificator -轻量级的通知库.
  • Php-pushwoosh -一个PHP库,可通过Pushwoosh REST Web服务轻松发送推送通知.

Deployment

用于项目部署的库.

  • Deployer -部署工具.
  • Envoy -使用PHP运行SSH任务的工具.
  • Rocketeer -适用于PHP世界的快速便捷的部署程序.

Internationalisation and Localisation

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

  • Aura.Intl -提供国际化(I18N)工具,特别是面向包的按区域设置的消息翻译.
  • Cake I18n -消息翻译和本地化的日期和数字(CP)

Serverless

*帮助构建无服务器Web应用程序的库和工具.

Configuration

Libraries and tools for configuration.

Third Party APIs

用于访问第三方API的库.

Extensions

帮助构建PHP扩展的库.

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

Miscellaneous

不属于上述类别的有用的库或工具.

  • Annotations -注释库(Doctrine的一部分).
  • BotMan -与框架无关的PHP库,用于构建跨平台的聊天机器人.
  • Cake Utility -实用程序类,例如Inflector,String,Hash,Security和Xml(CP).
  • Chief -命令总线库.
  • ClassPreloader -用于优化自动加载的库.
  • Country List -具有名称和ISO 3166-1代码的所有国家/地区的列表.
  • Embera -Oembed消费者图书馆.
  • Essence -用于提取Web媒体的库.
  • Graphviz -Graphviz库.
  • Hprose-PHP -一个非常新颖的RPC库,现在支持25种以上的语言.
  • JSON Lint - A JSON lint utility.
  • JSONPCallbackValidator -用于验证JSONP回调的库.
  • Lock -提供独占执行的锁库.
  • Metrics -一个简单的指标API库.
  • noCAPTCHA -Google的noCAPTCHA(reCAPTCHA)的帮助程序.
  • Nmap -一个PHP包装器 Nmap.
  • Pagerfanta -分页库.
  • PHP PassBook -适用于iOS PassBook的PHP库.
  • PHP-ML -使用PHP进行机器学习的库.
  • PHPStack -用PHP编写的TCP / IP堆栈概念证明.
  • print_o -对象图可视化器.
  • Procrastinator -用于运行耗时任务的库.
  • Prooph Service Bus -支持CQRS和微服务的轻量级消息总线
  • RMT -用于版本控制和发布软件的库.
  • sabre/vobject -用于解析VCard和iCalendar对象的库.
  • Safe -所有PHP函数,均经过重写以引​​发异常,而不是返回false.
  • Slimdump -适用于MySQL的简单转储工具.
  • Spork -分叉库的过程.
  • SuperClosure -允许对Closures进行序列化的库.
  • Symfony VarDumper -变量转储器组件(SF).
  • Underscore -Underscore JS库的PHP端口.
  • Whoops -一个漂亮的错误处理库.

Software

用于创建开发环境的软件.

PHP Installation

可帮助您在计算机上安装和管理PHP的工具.

Development Environment

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

  • Ansible -一个非常简单的业务流程框架.
  • Phansible -使用Ansible构建PHP开发虚拟机的Web工具.
  • Protobox -用于构建PHP开发虚拟机的另一个Web工具.
  • PuPHPet -用于构建PHP开发虚拟机的Web工具.
  • Puppet -服务器自动化框架和应用程序.
  • Vagrant -可移植的开发环境实用程序.
  • Docker -集装箱化平台.

Virtual Machines

备用PHP虚拟机.

  • Hack -HHVM的编程语言.
  • HHVM -Facebook提供的用于PHP的虚拟机,运行时和JIT.

Text Editors and IDEs

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

Web Applications

Web-based applications and tools.

  • 3V4L -在线PHP和HHVM Shell.
  • DBV -数据库版本控制应用程序.
  • PHP Queue -用于管理排队后端的应用程序.
  • MailCatcher -用于捕获和查看电子邮件的网络工具.
  • Cachet -开源状态页面系统.
  • phpRedisAdmin -一个简单的Web界面即可管理 Redis 数据库.
  • phpMyAdmin -MySQL / MariaDB的Web界面.
  • Adminer -在单个PHP文件中进行数据库管理.
  • Lychee -易于使用且外观精美的照片管理系统.

Infrastructure

用于提供PHP应用程序和服务的基础结构.

  • appserver.io -用PHP编写的PHP多线程应用程序服务器.
  • php-pm -用于PHP应用程序的进程管理器,增压器和负载平衡器.
  • RoadRunner -高性能PHP应用程序服务器,负载平衡器和进程管理器.

Resources

各种资源,例如书籍,网站和文章,用于提高您的PHP开发技能和知识.

PHP Websites

与PHP相关的有用网站.

Other Websites

与网站开发相关的有用网站.

PHP Books

与PHP相关的精彩书籍.

Other Books

与通用计算和网络开发相关的书籍.

PHP Videos

与PHP相关的精彩视频.

PHP Podcasts

*有关PHP主题的播客.

PHP Reading

与PHP相关的阅读材料.

PHP Internals Reading

阅读有关PHP内部或性能的材料.

PHP Magazines

与PHP相关的精彩杂志.