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的路径即可。
{ "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" //将旧数组转换为新数组。(数组() -> []) ], }
更多的配置如下,可以根据自己的需要添加:
{ "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 比较。 ] }