本篇文章带大家了解一下官方新项目 Laravel Pint,一个基于 PHP-CS-Fixer 专为 Laravel 优化的编码格式化工具,希望对大家有所帮助!

分享一个Laravel编码格式化工具:Laravel Pint-LMLPHP

期待已久的炒作终于结束了,Laravel 最新的开源 CLI 应用程序已经发布到世界各地,我们已经着手介绍它——Laravel Pint

“Laravel pint 是一个零依赖的、构建在 PHP-CS-Fixer 之上的 PHP 代码风格修复器,适用于极简主义者。”,以上是 readme 原文。

一读到这里,我就兴奋起来,我的意思是非常兴奋。在现代 PHP 中,我们一直在磨练我们的工艺,使我们的代码更严格和更好地测试,并确保我们拥有一致的代码风格。 这一切都始于 PHP-FIG 成立时,他们开始发布 PSRs,并且随着具有自己特定发布样式规则的框架不断发展壮大。这个包没有什么不同,它将根据预设自动测试和修复你的代码风格。

想要用这个包,请用 composer 安装它:

composer require laravel/pint --dev
登录后复制
登录后复制

安装后,无需配置即可运行。你可以运行以下命令:

./vendor/bin/pint
登录后复制
登录后复制
登录后复制

无需配置、无需设置、无需思考或努力 - 我的项目会立即针对 PSR-12 样式进行评估并自动修复。是不是很神奇?保持代码干净和一致有时需要耗费一些精力或思考如何进行此设置以及需要实现哪些规则。或者使用 PHP CS Fixer,你必须创建一个配置文件,然后创建一个查找器以将规则添加到 PHP 文件的数组中。事情很快变得一团糟,对吧?

如果您在项目的根目录中创建 pint.json 文件,它会简单地加载并读取配置,否则, 会加载并读取默认值。配置全部使用 JSON 的格式,使其更易于使用且更具可读性。

让我们快速浏览一下使用预设设置新的 pint 配置。但是让我们看看用一个全新的 Laravel 项目来做这件事,所以创建一个新项目:

laravel new pint-demo
登录后复制

在终端中打开这个新项目并安装 pint:

composer require laravel/pint --dev
登录后复制
登录后复制

使用我们全新的 Laravel 应用程序,让我们为 Laravel 配置一个预设。创建一个 pint.json 文件并添加:

{
    "preset": "laravel"
}
登录后复制

现在运行 pint:

./vendor/bin/pint
登录后复制
登录后复制
登录后复制

你应该看到类似于以下的输出:

分享一个Laravel编码格式化工具:Laravel Pint-LMLPHP

芜湖,起飞 ?

所以现在让我们将预设更改为 PSR-12 并检查输出:

{
    "preset": "psr12"
}
登录后复制

重新运行 pint,让我们看看输出:

./vendor/bin/pint
登录后复制
登录后复制
登录后复制

你应该看到以下输出:

分享一个Laravel编码格式化工具:Laravel Pint-LMLPHP

让我们检查一下,发现它实施了single_trait_insert_per_statementbracesnew_with_braces等规则。如果我们想稍微定制这些怎么办? 很简单,因为我们可以轻易地定义和删除规则,让我们在 pint.json 文件中关闭大括号:

{
    "preset": "psr12",
      "rules": {
        "braces": false
    }
}
登录后复制

这就对了!自定义设置代码样式的方式很简单。不再需要凌乱的 PHP 和数组来配置你的编码风格。所以让我们重新运行 pint,但这次我们想进行一次试运行,看看会发生什么变化:

./vendor/bin/pint —test
登录后复制

分享一个Laravel编码格式化工具:Laravel Pint-LMLPHP

厉害吧?漂亮干净的输出,进行试运行,看看什么会失败以及为什么!那么如果想要更多的信息会发生什么呢?我已经修复了上面的文件并返回到用户迁移以及撤消了这些更改,以便我们可以对其进行测试。让我们再次试运行,但这次想使用 -v 标识请求详细输出:

分享一个Laravel编码格式化工具:Laravel Pint-LMLPHP

我们得到了很好的输出,就像使用 GitHub 时一样,可以做出改变。 所以我们可以看到代码风格问题,如果我们修复了它会发生什么变化 - 所有这些都来自使用一个非常简单的命令。

我对你不了解,但这是我所有即将进行的项目、包以及我从事的任何其他工作的必备软件。

【相关推荐:laravel视频教程

以上就是分享一个Laravel编码格式化工具:Laravel Pint的详细内容,更多请关注Work网其它相关文章!

08-25 20:10