T-DOC
  • Laravel-11
  • Laravel-10
  • Laravel-6X
  • Laravel-5.5
Dcat-Admin
  • Yii2
  • 重构2
  • Laravel-11
  • Laravel-10
  • Laravel-6X
  • Laravel-5.5
Dcat-Admin
  • Yii2
  • 重构2
  • 前言

    • 发行说明
    • 升级指南
    • 贡献导引
  • 入门指南

    • 安装
    • 配置信息
    • 目录结构
    • 前端
    • Breeze
    • 部署
  • 核心架构

    • 请求周期
    • 服务容器
    • 服务提供者
    • Facades
  • 基础功能

    • 路由
    • 中间件
    • CSRF 保护
    • 控制器
    • 请求
    • 响应
    • 视图
    • Blade 模板
    • Vite 编译 Assets
    • 生成 URL
    • 登录和会话
    • 表单验证
    • 错误处理
    • 日志
  • 继续深入

    • Artisan 命令行
    • 广播系统
    • 缓存系统
    • 集合
    • Context 上下文
    • Contracts
    • 事件系统
    • 文件存储
    • 辅助函数
    • HTTP 客户端
    • 本地化
    • 发送邮件
    • 消息通知
    • 扩展包开发
    • 进程管理
    • 队列
    • 请求限流
    • 字符串操作
    • 任务调度
  • 安全相关

    • 用户认证
    • 用户授权
    • Email 认证
    • 加密解密
    • 哈希
    • 重置密码
  • 数据库

    • 数据库入门
    • 查询构造器
    • 分页
    • 数据库迁移
    • 数据填充
    • Redis
  • Eloquent ORM

    • 快速入门
    • 模型关联
    • Eloquent 集合
    • 属性修改器
    • API 资源
    • 序列化
    • Eloquent 数据工厂
  • 测试相关

    • 快速入门
    • HTTP 测试
    • 命令行测试
    • Dusk
    • 数据库测试
    • 测试模拟器 Mocking
  • 官方扩展包

    • 交易工具包 (Stripe)
    • 交易工具包 (Paddle)
    • Envoy 部署工具
    • Fortify 授权生成器
    • Folio 路由
    • Homestead 虚拟机
    • Horizon 队列管理工具
    • Mix
    • Octane(加速引擎)
    • Passport OAuth 认证
    • Pennant
    • Pint
    • Precognition
    • Prompts 命令行表单
    • Pulse 性能监控
    • Reverb WebSocket
    • Sail 开发环境
    • Sanctum API 授权
    • Scout 全文搜索
    • Socialite 社会化登录
    • Telescope 调试工具
    • Valet Mac 集成环境

本文档最新版为 10.x,旧版本可能放弃维护,推荐阅读最新版!

贡献指南

  • Bug 报告
  • 帮助支持
  • 核心发展讨论
  • 选择哪个分支?
  • 编译资源
  • 安全漏洞
  • 代码风格
    • PHPDoc
    • StyleCI
  • 行为准则

Bug 报告

为了鼓励活跃的协作,Laravel 强烈推荐拉取请求,而不仅仅是错误报告。只有标记为「准备好审查」(而不是「草稿」状态)且新功能的所有测试都通过的拉取请求才会进行审核。长时间处于「草稿」状态的非活跃拉取请求将在几天后被关闭。

不过,如果你提交了错误报告,你的问题应包含标题和清晰的问题描述。你还应尽可能提供相关信息和演示问题的代码示例。错误报告的目的是使自己和其他人能够轻松地复制错误并开发修复程序。

请记住,错误报告的创建是希望其他拥有相同问题的人能够与你协作解决问题。不要期望错误报告会自动获得任何活动,或者其他人会迅速修复它。创建错误报告有助于你自己和其他人开始解决问题的路径。如果你想参与,可以通过修复 我们的问题跟踪器中列出的任何错误 来帮忙。你必须使用 GitHub 进行身份验证才能查看 Laravel 的所有问题。

如果您在使用 Laravel 时注意到不适当的 DocBlock、PHPStan 或 IDE 警告,请不要创建 GitHub issue。相反,请提交pr来解决问题。

Laravel的源代码在GitHub上进行管理,每个Laravel项目都有各自的仓库:

帮助支持

Laravel 的 GitHub 问题跟踪器不适用于提供 Laravel 帮助或支持。请使用以下渠道之一:

核心发展讨论

你可以在 Laravel 框架存储库的 GitHub讨论板中提出新功能或改进现有 Laravel 行为。如果提出了新功能,请愿意实现至少一些完成该功能所需的代码。

关于错误、新功能和现有功能的实现的非正式讨论在 Laravel Discord server 的 #internals 频道进行。Laravel 的维护者 Taylor Otwell 通常在周一至周五上午 8 点至下午 5 点(UTC-06:00 或美国 / 芝加哥)在频道中出现,并在其他时间不定期出现。

选择哪个分支?

所有 bug 修复都应该发送到支持 bug 修复的最新版本(当前为 11.x)。Bug 修复永远不应该发送到主分支,除非它们修复了仅在即将发布的版本中存在的功能。

次要功能,如果与当前版本完全向后兼容,可以发送到最新的稳定分支(当前为 11.x)。

重要新功能或具有破坏性变更的功能应始终发送到主分支,其中包含即将发布的版本。

编译资源

如果你提交的更改会影响编译后的文件,例如 laravel/laravel 仓库中的 resources/css 或 resources/js 中的大多数文件,请不要提交编译后的文件。由于它们的大小很大,维护者无法实际审查它们。这可能被用作将恶意代码注入 Laravel 的方式。为了防御性地防止这种情况,所有编译后的文件都将由 Laravel 维护者生成并提交。

安全漏洞

如果你发现 Laravel 中存在安全漏洞,请通过电子邮件发送给 Taylor Otwell(taylor@laravel.com)。所有安全漏洞将得到及时处理。

代码风格

Laravel 遵循 PSR-2 编码标准和 PSR-4 自动加载标准。

PHPDoc

以下是一个有效的 Laravel 文档块示例。请注意,@param 属性后面跟着两个空格,参数类型,再跟着两个空格,最后是变量名:

/**
 * 容器注册与绑定
 *
 * @param  string|array  $abstract
 * @param  \Closure|string|null  $concrete
 * @param  bool  $shared
 * @return void
 *
 * @throws \Exception
 */
public function bind($abstract, $concrete = null, $shared = false)
{
    // ...
}

当 @param 或 @return 属性由于使用原生类型而出现冗余时,可以将其移除:

/**
 * 执行任务
 */
public function handle(AudioProcessor $processor): void
{
    //
}

但是,当原生类型是泛型时,请通过使用 @param 或 @return 属性指定泛型类型:

/**
 * 获取消息
 *
 * @return array<int, \Illuminate\Mail\Mailables\Attachment>
 */
public function attachments(): array
{
    return [
        Attachment::fromStorage('/path/to/file'),
    ];
}

StyleCI

别担心你的代码风格,StyleCI 是一个自动化的代码风格工具,它会在拉取请求合并后自动将任何风格修复合并到 Laravel 仓库中。这使我们能够专注于贡献的内容而不是代码风格上。

行为准则

Laravel 的行为准则源自于 Ruby 的行为准则。如果违反了行为准则,可以向 Taylor Otwell(taylor@laravel.com)报告:

  • 参与者应尊重不同的观点。
  • 参与者必须确保他们的语言和行为没有人身攻击和贬低个人言论。
  • 在解释他人的言行时,参与者应始终保持良好的意图。
  • 不能容忍可合理视为骚扰的行为。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。


原文地址:https://learnku.com/docs/laravel/11.x/co...

译文地址:https://learnku.com/docs/laravel/11.x/co...

Last Updated:
Contributors: Hans
Prev
升级指南