首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用phpcs或php-cs-固定器将函数多行参数固定到特定的结构中。

使用phpcs或php-cs-固定器将函数多行参数固定到特定的结构中。
EN

Stack Overflow用户
提问于 2020-06-22 17:34:46
回答 1查看 1K关注 0票数 1

我正在从事一个项目,开发了许多开发人员多年,而且经常发生的情况是,没有编码标准。

在一般情况下,有许多代码块是相似的,但编写方式不同。例如:

代码语言:javascript
复制
return $this->render('LibraryItem:list.html.twig',
    [
        'library_items' => $libraryItems,
    ]
);

代码语言:javascript
复制
return $this->render(
    'LibraryItem:list.html.twig',
    [
        'library_items' => $libraryItems,
    ]
);

代码语言:javascript
复制
return $this->render('LibraryItem:list.html.twig', array(
        'library_items' => $libraryItems,
    )
);

现在,我正在升级项目并介绍PSR-12编码风格。在本例中,我使用两个包PHPCodeSnifferPHP-CS-Fixer

我想要实现其中的一个包,强制上述代码块采用下一种格式:

代码语言:javascript
复制
return $this->render('LibraryItem:list.html.twig', [
    'library_items' => $libraryItems,
]);

这是一种简短、简单和可读的格式,在PSR-2元文件中有很好的描述。

使用一个或多个多行参数(即:数组、或匿名函数)并不构成分割参数列表本身,因此第4.6节不会自动执行。数组和匿名函数能够跨越多行。

问题是我找不到合适的规则,允许我用PHPCodeSniffer或PHPCodeSniffer自动修复所有这样的块。

EN

回答 1

Stack Overflow用户

发布于 2021-04-02 22:14:53

PHP有一个固定程序method_argument_spaceensure_single_line选项用于on_multiline

配置如下所示:

代码语言:javascript
复制
        'method_argument_space' => [
            'on_multiline' => 'ensure_single_line'
        ],
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62520278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档