awesome-php

作者: guanguans | 来源:发表于2018-01-23 14:58 被阅读1668次

    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 的开发框架
    • SwooleDistributed - swoole 分布式全栈框架
    • Zan PHP Framework - 有赞开源的 PHP 框架
    • php-msf - Camera360开源的微服务框架
    • Biny - Biny是一款高性能的超轻量级PHP框架
    • Swoft Framework - 基于Swoole原生协程,新时代PHP高性能协程框架

    组件( Components )

    配置( Configuration )

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

    • Yaconf - 一个高性能的配置管理扩展
    • config - 一个轻量级的配置加载器, 支持 PHP, INI, XML, JSON, YAML files
    • Zend-config
    • phpdotenv - 读取.env中全局的最高优先级变量

    微框架( 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 - 一个轻量级模板解析器
    • Aura.View - Provides TemplateView and TwoStepView

    静态站生成器( Static Site Generators )

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

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

    HTTP

    用于HTTP和抓取网站的库

    SOAP

    • soap-client - A general purpose SOAP client for PHP
    • soap-client - PHP implementation of SOAP 1.1 and 1.2 client specifications
    • wsdl2phpgenerator - Simple utility and class library for generating php classes from a wsdl file.

    中间件( 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 - 一个事件驱动的测试框架
    • SimpleTest - Unit Testing for PHP

    持续集成( 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 - 基于官方版本fork的社区版本(支持PHP7)
      • xhprof.io - 实现保存xhprof数据以及展示数据的UI
      • xhgui - 另一个保存xhprof数据以及展示数据的UI
    • Blackfire.io - 一个低开销的代码探查器
    • Kint - 一个调试和性能分析的工具
    • phptrace - 360开源的PHP执行跟踪工具
    • php-apm - Application performance management for PHP application
    • BooBoo - 集中异常捕获

    构建工具( 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
    • Aura SQL - SQL database access through PDO.

    迁移( Migrations )

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

    非关系型数据库( NoSQL )

    处理NoSQL后端的库

    • MongoDB
    • Redis
      • Predis - 一个功能完全的Redis库
      • codis - Codis 是一个分布式 Redis 解决方案
      • twemproxy - 是twtter开源的一个redis和memcache代理服务器
      • pika - Pika是一个可持久化的大容量redis存储服务

    队列( Queue )

    处理事件和任务队列的库

    队列服务框架

    • Kafka - 高吞吐量的分布式发布订阅消息系统
    • RabbitMQ - 使用 erlang 编写的 AMQP (高级消息队列协议) 的服务实现
    • RocketMQ
    • ActiveMQ
    • Qpid
    • Disque - 分布式内存队列
    • beanstalkd - 一个高性能、轻量级的消息队列中间件

    队列相关类库

    搜索( 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
    • Silly - Silly CLI micro-framework based on Symfony 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 - 检测关于用户的浏览器环境
    • colors.php - An easy way to add colors in your CLI scripts.

    数字( Numbers )

    处理数字的库

    • Numbers PHP - 一个处理数字的库
    • Math - 处理较大数字的库
    • ByteUnits - 一个在二进制和测量系统中解析、格式化和转换字节单位的库
    • PHP Units of Measure - 一个测量单位间转换的库
    • PHP Conversion - 另一个测量单位间转换的库
    • LibPhoneNumber for PHP - PHP实现的Google电话号码处理系统库
    • hashids.php - 用来把整数生成唯一字符串(比如:通过加密解密id来隐藏真实id)
    • Particle - PHP ID Generator | Implementation of Twitter Snowflake ID Generator

    过滤和验证( 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 - [最佳实践]数据返回的统一化处理
    • api-problem - A simple implementation of the api-problem specification
    • graphql-php - 应用层查询语言库
    • GraphQL - 另一个应用层查询语言库

    缓存( 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的库

    • mailgun-php - Mailgun's Official SDK for PHP
    • wechat - 让微信开发更简单
    • Qiniu/sdk - Qiniu Resource Storage SDK for PHP
    • Qiniu/qshell - qshell是利用七牛文档上公开的API实现的一个方便开发者测试和使用七牛API服务的命令行工具。
    • Wafer - 快速构建具备弹性能力的微信小程序
    • GeoIP2-php - MaxMind GeoIP2 地理位置服务

    扩展( Extensions )

    帮助构建PHP扩展的库

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

    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
    • Laravel Homestead

    虚拟机(Virtual Machines)

    替代的PHP虚拟机

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

    开发工具(Integrated Development Environment)

    支持PHP的IDE

    Web 应用程序(Web Applications)

    基于Web的应用程序和工具

    基础设施(Infrastructure)

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

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

    数据库中间件( DB Proxy )

    用于读写分离、分库分表等

    • kingshard - 金山开源的数据库中间件
    • heisenberg - 百度开源的数据库中间件
    • Oceanus - 58同城开源的数据库中间件
    • Atlas - 360开源数据库中间件
    • DBProxy - 美团点评基于Atlas的数据库中间件
    • Mycat
    • TiDB - 分布式数据库
    • mysql-proxy - Swoole开源的数据库中间件

    RPC框架

    远程过程调用框架

    异步网络通信框架( Asynchronous Event Driven Framework )

    规则引擎( Rules Engine )

    • Hoa\Ruler - Hoa项目的规则引擎
    • Ruler - 简单的无状态的规则引擎
    • Rules - PHP简易规则引擎

    其他( Miscellaneous )

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

    • pinyin - 汉字转拼音的库
    • Pinyin - 汉字转拼音的库
    • class.upload.php - 文件上传处理类
    • php-paginator - 分页处理类
    • Underscore.php - Underscore.js的PHP实现
    • Flexihash - 一致性hash库
    • Eden - 一个PHP快速开发类库,它包含很多组件用来自动加载、事件驱动、文档系统、缓存、模板、国际化、数据库、web服务、支付网关、装载和云服务技术。
    • html-parser - html解析工具
    • PHPCrawl - PHP的爬虫框架
    • Tig - 命令行下的 Git 浏览器
    • copywriting-correct - 中英文文案排版纠正器
    • PHP-ML - PHP 机器学习库
    • BotMan - 聊天机器人库

    相关文章

      网友评论

        本文标题:awesome-php

        本文链接:https://www.haomeiwen.com/subject/yoysaxtx.html