您的位置:首页 > 编程语言 > PHP开发

ATOM基础教程一php-cs-fixer配置(13)

2016-07-13 18:03 417 查看

php-cs-fixer简介

php-cs-fixer是自动规范化php代码插件,良好的代码规范可以提高代码可读性,减少团队沟通维护成本,最推荐大家遵守的是php-fig(PHP Framework Interop Group)组织定义的PSR-1PSR-2

php-cs-fixer配置

安装依赖php-cs-fixer.phar文件(需要翻墙):



详细安装可以去PHP-CS-Fixer官网查看,推荐以下三种安装方式:

1、wget https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v1.11.5/php-cs-fixer.phar -O php-cs-fixer
2、curl -L https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v1.11.5/php-cs-fixer.phar -o php-cs-fixer
3、./composer.phar global require fabpot/php-cs-fixer(需安装composer)


分享我下载的php-cs-fixer

将下载好的php-cs-fixer的路径粘贴到配置项处即可



2、配置php代码所遵循的代码规范,我选择的是常用的psr2



3、配置代码规范检查执行效率检查(不建议勾选)



4、配置格式化选项(Fixers)

encoding [PSR-1]//文件必须是不带 BOM 的 UTF-8 编码
short_tag [PSR-1]//只能使用 <?php ?> 和 <?= ?> 两种 PHP 代码标签
braces [PSR-2]//所有语句块都必须包含在花括号内,且位置以及缩进是符合标准的
class_definition [PSR-2]//class、trait、interfaces 关键字和名称之间只能有一个空格
elseif [PSR-2]//使用 elseif 替代 else if
eof_ending [PSR-2]//文件必须以空白行结尾
function_call_space [PSR-2]//调用函数和方法时,函数名和方法名与参数扩展之间不能有空格
function_declaration [PSR-2]//函数声明时空格的使用需要符合 PSR-2
indentation [PSR-2]//代码必须使用四个空格缩进而不是制表符
line_after_namespace [PSR-2]//命名空间的声明后必须有一个空白行
linefeed [PSR-2]//所有 PHP 文件都只能使用 LF(Unix) 结尾
lowercase_constants [PSR-2]//PHP 常量 true、false 和 null 必须使用小写
lowercase_keywords [PSR-2]//PHP 关键字必须都是小写
method_argument_space [PSR-2]//方法声明及调用时,参数之间的逗号前不能有空格,逗号后必须有一个空格
multiple_use [PSR-2]//每个use只能声明一个元素
parenthesis [PSR-2]//圆括号内两侧不能有空格
php_closing_tag [PSR-2]//纯PHP文件必须省略?>标签
single_line_after_imports [PSR-2]//每个use声明独立一行,且use语句块之后要有一个空白行
trailing_spaces [PSR-2]//删除非空行之后多余的空格
visibility [PSR-2]//每个属性和方法都必须指定作用域是 public、protected 还是 private,abstract 和 final 必须位于作用域关键字之前,static 必须位于作用域之后


我的配置如下:



php-cs-fixer使用演示



php-cs-fixer执行时弹出的警告框

内容如下:

You are running php-cs-fixer with xdebug enabled. This has a major impact on runtime performance

这个抛出的警告是说:当php.ini开启了debug模式时php-cs-fixer执行速度会变慢。这个其实并不影响php-cs-fixer的使用,实际执行速度是可以接受的,如果想关闭这个警告弹窗,可以关闭php.ini文件的debug模式(不推荐)



关闭debug模式后演示如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: