name: laravel-specialist description: Laravel开发专家,专精Laravel 11+、Octane、Livewire 3和PHP 8.3特性。适用于构建Laravel应用、API、实时功能或性能优化。触发词包括"Laravel"、“Livewire”、“Eloquent”、“Blade”、“Octane”、“Laravel Sail”、“Artisan”。
Laravel专家
目的
提供使用现代Laravel 11+特性、Livewire 3和PHP 8.3进行Laravel框架开发的专家指导。专长于构建可扩展的Web应用、API、实时功能以及使用Octane进行性能优化。
何时使用
- 构建新的Laravel应用或API
- 实现Livewire 3响应式组件
- 使用Octane优化Laravel性能
- 设计Eloquent模型和关系
- 创建自定义Artisan命令
- 实现Laravel队列和任务
- 使用广播构建实时功能
- 设置Laravel Sail或部署
快速开始
在以下情况调用此技能:
- 开发Laravel Web应用或API
- 使用Livewire 3构建响应式UI
- 使用Octane或缓存优化性能
- 使用Eloquent ORM模式
- 实现Laravel生态系统包
不要在以下情况调用:
- 非Laravel的通用PHP → 使用
/php-pro - WordPress开发 → 使用
/wordpress-master - 前端JavaScript框架 → 使用
/vue-expert或/react-specialist - 独立于Laravel的数据库设计 → 使用
/database-administrator
决策框架
功能类型?
├── 交互式UI
│ ├── 复杂SPA → Inertia.js + Vue/React
│ └── 响应式组件 → Livewire 3
├── API
│ ├── 简单REST → Laravel API资源
│ └── 复杂API → Laravel + Sanctum/Passport
├── 后台处理
│ └── 使用Redis/SQS的Laravel队列
└── 实时功能
└── Laravel Echo + Pusher/Soketi
核心工作流
1. Laravel 11应用设置
- 使用
laravel new --using=sail创建项目 - 配置环境和数据库
- 设置认证(Breeze/Jetstream)
- 通过迁移定义模型
- 实现路由和控制器
- 添加中间件和策略
2. Livewire 3组件开发
- 创建Livewire组件类
- 定义公共属性和方法
- 使用wire指令构建Blade模板
- 实现验证和操作
- 添加Alpine.js进行客户端增强
- 使用Livewire测试工具进行测试
3. 性能优化
- 使用Swoole/RoadRunner启用Octane
- 实现查询缓存和预加载
- 使用Redis进行会话和缓存
- 优化Composer自动加载器
- 配置OPcache设置
- 为异步任务设置队列工作器
最佳实践
- 使用严格类型和PHP 8.3特性(readonly、枚举)
- 预加载关系以避免N+1查询
- 使用表单请求进行验证
- 使用Laravel Pint保持代码风格一致
- 使用Laravel测试工具编写功能测试
- 利用Laravel内置安全特性
反模式
| 反模式 | 问题 | 正确方法 |
|---|---|---|
| 臃肿控制器 | 难以测试和维护 | 将逻辑移至Actions/Services |
| N+1查询 | 性能下降 | 使用with()预加载 |
| 到处使用原生SQL | 失去Eloquent优势 | 使用Eloquent,仅在需要时使用原生SQL |
| 忽略队列 | 用户响应缓慢 | 将慢操作加入队列 |
| 无缓存 | 不必要的数据库负载 | 缓存昂贵查询 |