Sublime Text 3的phpfmt插件安装及格式化参数使用说明

一、首先安装phpfmt插件

在 Sublime Text 中 ctrl+shift+P

选择 Package Control: Install Package

搜索 phpfmt

二、配置phpfmt

打开 Preferences–>Package Settings–>phpfmt->Settings User ,以下是我的phpfmt的配置,将下面的代码粘贴上去修改一下php_bin的路径即可。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
{
"version": 4,
"php_bin":"F:/xampp7/php/php.exe",
"format_on_save":true,   //保存自动格式化
"option": "value",
"indent_with_space": true,  //空行缩进
"enable_auto_align": true,  //启用自动对齐
"psr1": true,   //PHP规范PSR1
"psr1_naming": true,   //PHP规范PSR1命名
"passes":
	[
	    "MergeElseIf",  //如果与 else 合并
	    "AlignEquals",  //垂直对齐“=”
	    "AlignDoubleArrow",   //垂直对齐 T_DOUBLE_ARROW (=>)
	    "AlignConstVisibilityEquals", //垂直对齐可见性和常量块的“=”
	    "AlignPHPCode",   //在 HTML 块中对齐 PHP 代码。
	    "ShortArray"    //将旧数组转换为新数组。(数组() -> [])
	],
}

更多的配置如下,可以根据自己的需要添加:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
{
	"version": 4,
	"php_bin":"F:/xampp7/php/php.exe",
	"format_on_save":false,   //保存自动格式化
	"option": "value",
	"indent_with_space": true,  //空行缩进
	"enable_auto_align": true,  //启用自动对齐
	"psr1": true,   //PHP规范PSR1
	"psr1_naming": true,   //PHP规范PSR1命名
	"passes":[
		"AddMissingParentheses", //在新实例中添加额外的括号。
		"AliasToMaster", //将函数别名替换为其主人 - 仅基本语法别名。
		"AlignConstVisibilityEquals", //垂直对齐可见性和常量块的“=”。
		"AlignDoubleArrow", //垂直对齐 T_DOUBLE_ARROW (=>)。
		"AlignDoubleSlashComments", //垂直对齐“//”注释。
		"AlignEquals", //垂直对齐“=”。
		"AlignGroupDoubleArrow", //按线组垂直对齐 T_DOUBLE_ARROW (=>)。
		"AlignPHPCode", //在 HTML 块中对齐 PHP 代码。
		"AlignTypehint", //垂直对齐函数类型提示。
		"AllmanStyleBraces", //将所有花括号转换为 Allman 样式。
		"AutoPreincrement", //自动将后增量转换为前增量。
		"AutoSemicolon", //在语句结尾添加分号。
		"CakePHPStyle", //应用 CakePHP 编码风格
		"ClassToSelf", //"self" 在类、特征或接口中是首选。
		"ClassToStatic", //“静态”在类、特征或接口中是首选。
		"ConvertOpenTagWithEcho", //从“<?=”转换为“<?php echo”。
		"DocBlockToComment", //在非结构元素中使用时,用常规注释替换文档块。
		"DoubleToSingleQuote", //从双引号转换为单引号。
		"EchoToPrint", //从 T_ECHO 转换为打印。
		"EncapsulateNamespaces", //用花括号封装命名空间
		"GeneratePHPDoc", //自动生成 PHPDoc 块
		"IndentTernaryConditions", //对三元条件应用缩进。
		"JoinToImplode", //替换 implode() 别名(join() -> implode())。
		"LeftWordWrap", //自动换行 80 列 - 左对齐。
		"LongArray", //将短数组转换为长数组。
		"MergeElseIf", //如果与 else 合并。
		"SplitElseIf", //如果与 else 合并。
		"MergeNamespaceWithOpenTag", //确保命名空间前不超过一个换行符
		"MildAutoPreincrement", //自动将后增量转换为前增量。(不推荐使用的过程。使用 AutoPreincrement 代替)。
		"NewLineBeforeReturn", //在 T_RETURN 之前添加一个空行。
		"OrganizeClass", //组织类、接口和特征结构。
		"OrderAndRemoveUseClauses", //命令使用阻止并删除未使用的导入。
		"OnlyOrderUseClauses", //订单使用块 - 不要删除未使用的导入。
		"OrderMethod", //组织类、接口和特征结构。
		"OrderMethodAndVisibility", //组织类、接口和特征结构。
		"PHPDocTypesToFunctionTypehint", //从 PHPDoc 块中读取变量类型并将它们添加到函数签名中。
		"PrettyPrintDocBlocks", //美化文档块
		"PSR2EmptyFunction", //将空函数体合并在函数头的同一行。
		"PSR2MultilineFunctionParams", //将函数参数分成多行。
		"ReindentAndAlignObjOps", //对齐对象操作符。
		"ReindentSwitchBlocks", //将 switch 块的内容重新缩进一层。
		"RemoveIncludeParentheses", //从包含声明中删除括号。
		"RemoveSemicolonAfterCurly", //关闭花括号后删除分号。
		"RemoveUseLeadingSlash", //删除 T_USE 导入中的前导斜线。
		"ReplaceBooleanAndOr", //从“和”/“或”转换为“&&”/“||”。危险!这个过程会导致行为改变。
		"ReplaceIsNull", //将 is_null($a) 替换为 null === $a。
		"RestoreComments", //恢复评论内容的任何格式。
		"ReturnNull", //简化空返回。
		"ShortArray", //将旧数组转换为新数组。(数组() -> [])
		"SmartLnAfterCurlyOpen", //添加隐式卷曲块时添加换行符。
		"SortUseNameSpace", //按长度和字母顺序组织 use 子句。
		"SpaceAroundControlStructures", //在控制结构周围添加空间。
		"SpaceAroundExclamationMark", //在感叹号周围添加空格。
		"SpaceBetweenMethods", //在方法之间放置空格。
		"StrictBehavior", //在 array_search、base64_decode、in_array、array_keys、mb_detect_encoding 中激活严格选项。危险!这个过程会导致行为改变。
		"StrictComparison", //所有比较都转换为严格的。危险!这个过程会导致行为改变。
		"StripExtraCommaInArray", //删除数组块中的尾随逗号
		"StripNewlineAfterClassOpen", //在类打开花括号后去掉空行。
		"StripNewlineAfterCurlyOpen", //打开花括号后去掉空行。
		"StripNewlineWithinClassBody", //在类打开花括号后去除空行。
		"StripSpaces", //删除所有空格
		"StripSpaceWithinControlStructures", //去除控制结构内的空行。
		"TightConcat", //确保字符串连接没有空格,除非接近数字。
		"TrimSpaceBeforeSemicolon", //删除分号前的空行。
		"UpgradeToPreg", //将 ereg_* 调用升级到 preg_*
		"WordWrap", //自动换行 80 列。
		"WrongConstructorName", //将旧的构造函数名称更新为新的构造函数名称。http://php.net/manual/en/language.oop5.decon.php
		"YodaComparisons", //执行 Yoda 比较。
	]
}