154 lines
4.9 KiB
Plaintext
154 lines
4.9 KiB
Plaintext
|
<?php
|
||
|
$header = <<<EOF
|
||
|
The file is part of the payment lib.
|
||
|
|
||
|
(c) Leo <dayugog@gmail.com>
|
||
|
|
||
|
This source file is subject to the MIT license that is bundled
|
||
|
with this source code in the file LICENSE.
|
||
|
EOF;
|
||
|
|
||
|
$finder = PhpCsFixer\Finder::create()
|
||
|
->exclude('vendor/')
|
||
|
->in(__DIR__);
|
||
|
|
||
|
$rules = [
|
||
|
// PSR2为基准
|
||
|
'@PSR2' => true,
|
||
|
|
||
|
// 数组统一:[ ]
|
||
|
'array_syntax' => ['syntax' => 'short'],
|
||
|
|
||
|
// namespace 之后空一行
|
||
|
'blank_line_after_namespace' => true,
|
||
|
|
||
|
// new: namespace 之前不能有空行
|
||
|
'no_blank_lines_before_namespace' => true,
|
||
|
|
||
|
// 合并多条连续的 unset 方法
|
||
|
'combine_consecutive_unsets' => true,
|
||
|
|
||
|
// 字符串连接空格
|
||
|
'concat_space' => ['spacing' => 'one'],
|
||
|
|
||
|
// case 空格
|
||
|
'cast_spaces' => true,
|
||
|
|
||
|
// else if 转换为 elseif
|
||
|
'elseif' => true,
|
||
|
|
||
|
// utf8 无bom头编码
|
||
|
'encoding' => true,
|
||
|
|
||
|
// 必须使用<?php 或者 <?=
|
||
|
'full_opening_tag' => true,
|
||
|
|
||
|
// 单行注释使用 双斜杠
|
||
|
'hash_to_slash_comment' => true,
|
||
|
|
||
|
// 头部的注释信息,统一
|
||
|
'header_comment' => ['header' => $header],
|
||
|
|
||
|
// 代码必须使用配置的缩进类型
|
||
|
'indentation_type' => true,
|
||
|
|
||
|
// 所有PHP文件必须使用相同的行结束
|
||
|
'line_ending' => true,
|
||
|
|
||
|
// true, false, and null 必须为小写
|
||
|
'lowercase_constants' => true,
|
||
|
|
||
|
// 在方法参数和方法调用中,每个逗号之间绝对不能为空格,每个逗号之后必须有一个空格
|
||
|
'method_argument_space' => true,
|
||
|
|
||
|
// class 大括号后不应有空行
|
||
|
'no_blank_lines_after_class_opening' => true,
|
||
|
|
||
|
// 删除空注释
|
||
|
'no_empty_comment' => true,
|
||
|
|
||
|
// 删除无用的空语句
|
||
|
'no_empty_statement' => true,
|
||
|
|
||
|
// 命名空间声明行不应包含前导空
|
||
|
'no_leading_namespace_whitespace' => true,
|
||
|
|
||
|
// => 不应该被多行空格包围
|
||
|
'no_multiline_whitespace_around_double_arrow' => true,
|
||
|
|
||
|
// 在开始的括号之后,绝对不能是一个空格。在右括号之前绝对不能是空格
|
||
|
'no_spaces_inside_parenthesis' => true,
|
||
|
|
||
|
// 绝对不能在offset 周围空格
|
||
|
'no_spaces_around_offset' => ['inside', 'outside'],
|
||
|
|
||
|
// 禁止在关闭分号之前的单行空格
|
||
|
'no_singleline_whitespace_before_semicolons' => true,
|
||
|
|
||
|
// 删除列表函数调用中的逗号
|
||
|
'no_trailing_comma_in_list_call' => true,
|
||
|
|
||
|
// PHP单行数组不应该有逗号
|
||
|
'no_trailing_comma_in_singleline_array' => true,
|
||
|
|
||
|
// 注释和phpdocs中必须没有尾随空格
|
||
|
'no_trailing_whitespace_in_comment' => true,
|
||
|
|
||
|
// 删除空白行末尾的尾随空格
|
||
|
'no_whitespace_in_blank_line' => true,
|
||
|
|
||
|
// 在数组声明中,每个逗号之前绝对不能是空格
|
||
|
'no_whitespace_before_comma_in_array' => true,
|
||
|
|
||
|
// 必须删除未使用的使用语句
|
||
|
'no_unused_imports' => true,
|
||
|
|
||
|
// 删除无用的else
|
||
|
'no_useless_else' => true,
|
||
|
|
||
|
// 删除无用的return
|
||
|
'no_useless_return' => true,
|
||
|
|
||
|
// 导入列表排序
|
||
|
'ordered_imports' => true,
|
||
|
|
||
|
// 没有结束标记的PHP文件必须始终以单个空行内容结尾
|
||
|
'single_blank_line_at_eof' => true,
|
||
|
|
||
|
// 每个声明必须是一个使用关键字
|
||
|
'single_import_per_statement' => true,
|
||
|
|
||
|
// 将简单字符串的 双引号 转换为 单引号
|
||
|
'single_quote' => true,
|
||
|
|
||
|
// 三元操作符空格
|
||
|
'ternary_operator_spaces' => true,
|
||
|
|
||
|
// 数组去空格
|
||
|
'trim_array_spaces' => true,
|
||
|
|
||
|
// 一元运算符靠着操作数
|
||
|
'unary_operator_spaces' => true,
|
||
|
|
||
|
/** 可见性必须在所有属性和方法上声明;
|
||
|
* 抽象和最终必须在可见性之前声明;
|
||
|
* 静态必须在可见性之后声明
|
||
|
**/
|
||
|
'visibility_required' => true,
|
||
|
|
||
|
// 数组箭头对齐
|
||
|
'binary_operator_spaces' => [
|
||
|
'operators' => [
|
||
|
'=' => 'align_single_space_minimal',
|
||
|
'=>' => 'align_single_space_minimal',
|
||
|
],
|
||
|
],
|
||
|
|
||
|
// 数组的逗号后面有一个空格
|
||
|
'whitespace_after_comma_in_array' => true,
|
||
|
];
|
||
|
|
||
|
return PhpCsFixer\Config::create()
|
||
|
->setRules($rules)
|
||
|
->setFinder($finder);
|