开源的 PHP 桌面练习场
PHP 是世界上最流行的编程语言之一。它已经存在了很长时间,拥有庞大的开发人员社区。它用于从简单的网站到复杂的 web 应用的一切。如果你正在学习 PHP,你需要一个良好的开发环境来练习。虽然有很多像这样和这样的 PHP 线上练习场,你也可以使用 CLI 来运行你的 PHP 代码,但没有什么比为 PHP 提供一个专用的桌面练习场更好的了。当然,也有像 Tin...
Laravel Playwright - 快速使用 Playwright 启用测试
Laravel Playwright 包提供了开始使用 Playwright 快速测试 Laravel 应用所需的样板。此包将帮助你安装所有必要的文件,提供测试所需的 Laravel 特定助手,并为你提供一个示例规范来演示如何使用 Playwright 编写端到端测试:test('Can create a new user and log them in',...
Laravel 动态关联加载
Laravel 的 loadMissing 方法提供了一种灵活的方式,对现有模型或集合进行预加载。该方式避免了 N+1 的查询问题,同时允许你只在需要时加载关联。当使用可选的内容或仪表板构建 API 时,此功能尤其有价值,因为不同的部分需要不同的关联数据。$post->loadMissing(['comments', 'author']); ...
[Laravel 扩展包]Laravel Rewind - Eloquent 的版本控制包
Laravel Rewind 是 Jared Cannon 创建的为 Eloquent 模型提供的一个强大而高效的版本控制包。此包存储模型数据的部分差异和完整快照的组合。Rewind 将自动确定当前版本、可用快照和目标之间的最短路径:
Laravel 使用 whereRelation 进行 Eloquent 关联查询
Laravel 的 whereRelation 方法简化了基于关联属性过滤模型的处理。这个优雅的方式代替复杂的子查询,加入了更具可读性以及更可维护的语法。在电子商务平台、内容管理系统或任何模型相互连接且基于相关数据进行过滤至关重要的应用中构建复杂过滤器时,此功能特别有价值。Post::whereRelation('comments', 'is_approve...
使用 Spatie Event Sourcing 创建事件溯源域
事件溯源(Event Sourcing)是一种跟踪应用状态变化的强大模式,为 Laravel 中管理域名驱动设计提供了一种健壮的方法。然而,设置事件溯源域名可能既费时又重复,尤其是在遵循最佳实践时。为了简化这个过程,Alberto Arena 创建了一个 Laravel 包,它使用 Spatie 的事件溯源库自动创建事件溯源域。只需一个 artisan 命...
PHP 版本统计:2025-01
本文是关于整个社区 PHP 版本使用情况的统计。这些数据或许并不能百分百准确地将整个 PHP 社区的生态现状,但可以准确地表示 packagist (PHP 包)生态的情况。使用统计让我们先看看今天使用的 PHP 版本的百分比。我省略了所有使用率不超过 1% 的版本...
Laravel 12 升级指南
从 11.x 升级到 12.0 预计升级时间:5 分钟 更新依赖影响可能性:高 应用的 composer.json 文件中更新如下依赖:laravel/framework 更新到 ^12.0 Carbon 3 影响可能性:ddi4Carbon 2.x 的支持已经移除。所有 Laravel 12 应用现在要求使用 Carbon 3.x。更新 Laravel Insta...
[Laravel 扩展包]Laravel 集成 Grok AI
Grok AI 包将 Grok AI 无缝集成到 Larave 应用中。利用强大的 AI 模型进行聊天、自动化和 NLP,同时保持 Laravel 的表达简单性。use GrokPHP\Laravel\Facades\GrokAI; use GrokPHP\Client\Config\ChatOptions; use GrokPHP\Client\Enu...