其实这个是我两年前在论坛发的帖子的延续,原帖不再更新。
前言
话说那是个百无聊赖的晚上,我,无事可做,边突发奇想发了这一文章。
其实很多资源都是我从 GitHub Explore 、别人的 Star 记录里看来的,这边推荐大家无聊的时候也可以看看 GitHub 的 Explore,里边有很多有趣的项目,或者也可以订阅日报什么的,每天看看还是不错的。
原本打算每个资源都整一个功能预览之类,但因为我太懒了,所以…
排名按字母排序!
正文
库
cakephp/chronos (github.com/cakephp/chronos)
不可变的 Carbon
与 Carbon 基本一致,区别在于这个库的实例是不可变的,只会返回新实例,不能修改原有实例。
dragonmantank/cron-expression (github.com/dragonmantank/cron-expr...)
一系列关于 CRON 表达式的方法
包括计算下次执行时间、此时是否应该执行等。
halaxa/json-machine (github.com/halaxa/json-machine)
快速读取超大 JSON 文件(数据)
支持逐行读取 JSON 文件,避免内存离家出走,速度很快。
hidehalo/nanoid-php (github.com/hidehalo/nanoid-php)
Nanoid 的 PHP 实现,唯一 ID 生成器
与 UUID 的作用基本一致,但更简短友好。
intervention/image (image.intervention.io)
Intervention Image 是一个 PHP
图像处理和操作库,提供了一种更简单,更有表现力的方式来创建,编辑图像。
推荐理由:这是我用过的最好的一款图像处理扩展,莫有之一。
itsgoingd/clockwork (underground.works/clockwork)
Clockwork 是一个浏览器扩展,提供调试和分析PHP应用程序的工具,包括请求数据,应用程序日志,数据库查询,路由,应用程序运行时的可视化等。
推荐理由:可以很方便地进行调试,且支持 Chrome / Firefox 的插件以及网页查看。
jasny/phpdoc-parser (github.com/jasny/phpdoc-parser)
PHPDoc 解析器
可以解析各种不同的 PHPDoc 标签,支持自定义。
jelix/version (github.com/jelix/version)
版本号解析库
koriym/koriym.attributes (github.com/koriym/Koriym.Attribute...)
兼容 Doctrine Annotation 接口的 PHP8 Attribute 解析库
可以同时解析 Doctrine Annotation 和 PHP8 Attribute!
league/climate (github.com/thephpleague/climate)
终端样式库
封装了很多用于输出终端颜色、样式代码的方法,支持输入、表格、进度条等功能。
league/plates (github.com/thephpleague/plates)
原生 PHP 模板引擎
完全基于原生语法,不需要像 Blade、Twig 那样学习新的语法,适合喜欢原生或者不想学习的人。有模板继承、转义等功能。可以方便地集成到不同框架。
league/uri (github.com/thephpleague/uri)
URI 操作库
提供了很多解析、操作 URI 的方法,功能非常强大。
maatwebsite/excel (laravel-excel.maatwebsite.nl)
Laravel Excel 是一个可以快捷实现模型导入及导出成Excel的扩展。
推荐理由:配置相对较少,代码没有那么繁复。
mledoze/countries (github.com/mledoze/countries)
国家及地区信息库,包含多种形式的数据:JSON、CSV、YAML、XML。
包含了地区代码、首都信息、使用语言、边境、旗帜、下属地区的一系列信息。
php-http/httplug (github.com/php-http/httplug)
基于 PSR-7 / 18 规范的 HTTP 抽象客户端
这并不是一个 HTTP 客户端,你需要搭配其他实现了 PSR-7 / 18 规范的客户端使用,但它可以确保不管你使用哪个客户端都可以达到同样的效果。
roave/betterreflection (github.com/Roave/BetterReflection)
更好的反射,对原生反射 API 的封装和扩展。
相比原生的反射有了不少的进步,比如可以直接基于文件进行分析,不需要实际引入代码,可以解析 AST 树等。
spatie/backtrace (github.com/spatie/backtrace)
更好的调用栈!
不得不说,PHP 原生的调用栈实在太难用了,解析过于麻烦。
spatie/emoji (github.com/spatie/emoji)
用编程方式操作表情符号(Emoji)
简单来说就是封装了一堆方法来获取 Emoji 字符,这样就不用自己找了。
spatie/laravel-permission (github.com/spatie/laravel-permissi...)
Laravel Permission 用于管理权限、角色。
推荐理由:设计较优,代码便捷,且有实战教程可供参考。
spatie/macro (github.com/spatie/macroable)
通过宏的方式给类添加方法
如果你用过 Laravel 的话应该对宏的用法不陌生,可以大大提升一个类的扩展性。
spatie/once (github.com/spatie/once)
可以让一个方法的返回永远是第一次执行的值
对于一些只在开始时生成一次的随机数来说用处颇大。
spatie/string (github.com/spatie/string)
字符串操作库
提供了很多操作字符串的方法,支持链式调用。
symfony/polyfill-php80 (github.com/symfony/polyfill-php80)
提供 PHP7 的 PHP8.0 函数的替代实现(好吧是有点绕
想在 PHP7 上用 PHP8 的函数?那这个适合你。
网站
Adorable Avatars (avatars.adorable.io)
一个面向Web开发人员和设计人员的随机头像服务。
推荐理由:我喜欢他的头像风格。
Creative Tim (www.creative-tim.com)
很多精美的UI包以及模板,免费和付费都有。
推荐理由:有不少UI包及模板都是基于Boostrap的。
Json Parser Online (json.parser.online.fr)
在线解析 Json 字符串,支持高亮、显示值类型、显示数组索引等,同时支持Parse
和Eval
两种方式进行解析。
Laravel China (laravel-china.org)
高品质Laravel开发者中文交流社区
Regex101 (regex101.com)
正则表达式测试
除了基本功能外,还自带正则分享功能,可以搜到很多常用的正则表达式。还可以一键导出 PHP、JS、Golang 等代码实现。
Simple Icons (simpleicons.org)
提供了大量品牌的图标,且每个图标都附有该品牌的代表色。
推荐理由:想不到。反正我经常在这找品牌图标的配色。
Socialite Providers (socialiteproviders.netlify.com)
大量开箱即用的第三方登录扩展。
推荐理由:我找不到比这更全的了。
Spatie (spatie.be/open-source)
Spatie 发布了大量实用的扩展。
发布了大量实用的扩展。
前端
Bootstrap (getbootstrap.com)
最受欢迎的前端框架,有着庞大的用户群及社区。
推荐理由:兼容性极高,社区生态丰富。
Editor.md (pandao.github.io/editor.md)
开源在线 Markdown 编辑器。
推荐理由:虽然版本久远了点,但功能全且不过时。
Font Awesome (fontawesome.com)
不错的图标库,支持Font Class、Svg等方式。
推荐理由:使用方便,与Bootstrap框架兼容。
Material Design Icon (material.io/tools/icons)
Material风格的图标库。
推荐理由:使用方便,与不少基于Material设计风格的框架兼容。
Single Element CSS Spinners (projects.lukehaas.me/css-loaders)
一组非常漂亮的可用于加载的CSS3动效。
推荐理由:感觉还不错,可以自定义配色。
UIkit (getuikit.com)
轻量级的前端框架,可开发快速,强大的Web界面。
推荐理由:不写了,自己感受。
框架
Hyperf (github.com/hyperf/hyperf)
Swoole WEB/微服务开发框架
与 Swoole 深度集成。
Laravel (laravel.com)
一款相当强大的全栈框架,可以说占据了半壁江山。
推荐理由:封装了各种常用的函数,社区庞大。
PhpBoot (phpboot.org)
为快速开发 微服务 / RESTful API 设计的 PHP 框架。
推荐理由:用 Annotation 语法来编写路由,请求参数及返回值等,蛮有趣的。
Slim (www.slimframework.com)
轻量级框架,可以快速开发。
推荐理由:没有 Laravel 那么臃肿,效率不错,且支持 MVC 和 ORM 等,还可以使用 Blade 作模板引擎。也是我最近使用的一款框架。
ThinkPHP (www.thinkphp.cn)
为 API 而生的高性能框架。目前有不少人在用,在国内相当热门。
zhamao-robot/zhamao-framework (github.com/zhamao-robot/zhamao-fra...)
兼容 OneBot 协议的机器人开发框架,可以方便地对接 QQ 等通信平台。
利益相关:我是维护者之一。
工具
krakjoe/pcov (github.com/krakjoe/pcov)
代码覆盖率检测驱动,建议与 PHPUnit 搭配使用
与 XDebug 不同的是它更加轻量、兼容性更高,兼容 Swoole。
Psysh (github.com/bobthecow/psysh)
交互式控制台
我用过最好用的,如果你喜欢 Laravel Artisan Tinker 的话你也一定会喜欢它。
juicyfx/vercel-php (github.com/juicyfx/vercel-php)
Vercel PHP 运行时
Vercel 是个静态网站和 Serverless 的部署服务,类似 Heroku。在国内的访问还是不错的,这个 vercel-php 就是让 Vercel 可以支持部署基于 PHP 的项目。亲测可用于部署 Laravel 9 项目。
phpstan/phpstan (github.com/phpstan/phpstan)
静态代码分析器
我只能说每个项目都应该有它,可以帮你发现许多潜在的 BUG 和隐患,同类型的还有 Psalm、Phan。
本文章随作者心情更新。
如果你发现了好用的资源,也可以在下方留言或私信我,我会不定期添加到合集中。
我自觉排版不算特别好,如果你有什么建议也欢迎留言。