Laravel Pint 的 Laravel 预设现在包含
fully_qualified_strict_types
该规则会自动将完全限定类名 (FQCN) 替换为短类名,并添加相应的扩展名。
use
声明。规则是
由努诺·马杜罗添加
适用于代码和 PHPDoc 注解。
该规则的作用
当您使用类的完全限定名称引用该类时,该规则会将其转换为短名称并添加一个
use
在文件顶部导入。例如,一个典型的 Laravel 模型可能如下所示:
班级
用户
延伸
可验证{
/** @use HasFactory<\Database\Factories\UserFactory> */
使用
有工厂
,
须通知
;
受保护
功能
演员阵容
()
:
大批{
返回
[
'email_verified_at'
=>
\Illuminate\Database\Eloquent\Casts\Attribute
::班级
,];}}
运行 Pint 后,它变为:
使用
数据库\工厂\用户工厂
;使用
照亮\数据库\Eloquent\Casts\属性
;班级
用户
延伸
可验证{
/** @use HasFactory */
使用
有工厂
,
须通知
;
受保护
功能
演员阵容
()
:
大批{
返回
[
'email_verified_at'
=>
属性
::班级
,];}}
该规则处理类型提示、返回类型、PHPDoc 标签中的 FQCN(完全限定类名)
@param
,
@return
,
@var
,
@throws
)和内联代码引用。
如何使用它
如果你的项目使用 Pint 的默认设置
laravel
预设规则已生效。更新 Pint 并运行它:
作曲家
更新
laravel/品脱./供应商/bin/品脱
如果你在设置中使用自定义预设,
pint.json
您可以手动添加规则:
{
“预设”
:
“psr12”
,
“规则”
:{
"完全限定的严格类型"
:{
"import_symbols"
:
真的}}}
环境
import_symbols
到
true
告诉修复程序自动添加
use
它会为找到的任何 FQCN 添加语句,而不仅仅是缩短已经具有相应导入的名称。
须知事项
此规则将在您更新后首次运行 Pint 时影响现有项目。由于完全限定类名 (FQCN) 将被替换为导入语句,因此您的代码库中会出现一次性差异。这些更改只是代码格式上的差异,不会影响运行时行为。
完整的规则文档请参见: Symfony PHP-CS-Fixer 文档 。





