elplaza / mypsr
我的PHP编码规范
v1.0.8
2019-02-05 14:01 UTC
Requires
- php: >=7.2
- ext-xml: *
- friendsofphp/php-cs-fixer: @stable
- phpmd/phpmd: @stable
- squizlabs/php_codesniffer: @stable
Requires (Dev)
- phpunit/phpunit: 7.5.3
README
安装
定义的标准是理论上希望在所有项目中使用的标准,因此需要全局安装。为了“敏捷”地使用,需要安装相应的编辑器插件并进行配置。
使用 SublimeText 3,我推荐的插件是 Phpcs。此插件可以使用多个工具,例如 sniffer、linter、错误检测器、修复器 等,这些工具将在安装此插件后全局安装:composer global require elplaza/mypsr
备注:要更新全局安装的包,请运行:composer global update
安装工具后,需要将这些工具(作为要使用的标准)通过配置文件(首选项 --> 包设置 --> PHP Code Sniffer --> 用户设置)通知插件,例如:
{
"show_debug" : false,
"phpcs_executable_path" : "~/.composer/vendor/bin/phpcs",
"phpcbf_executable_path" : "~/.composer/vendor/bin/phpcbf",
"php_cs_fixer_executable_path": "~/.composer/vendor/bin/php-cs-fixer",
"phpmd_executable_path" : "~/.composer/vendor/bin/phpmd",
"phpcs_show_quick_panel" : true,
"phpcbf_on_save" : true,
"php_cs_fixer_on_save" : false,
"phpmd_run" : true,
"phpcs_additional_args" : {
"--standard": "~/.composer/vendor/elplaza/mypsr/src/MyPSR",
"-n": ""
},
"phpcbf_additional_args": {
"--standard": "~/.composer/vendor/elplaza/mypsr/src/MyPSR",
"-n": ""
}
}
🪲提示:如果插件似乎不起作用,请启用show_debug
并打开Sublime的终端。
运行测试
要运行MyPSR的测试,只需
- 运行单个测试:
./vendor/bin/phpunit src/MyPSR/Tests/WhiteSpace/BracketsUnitTest.php
- 运行所有测试:
./vendor/bin/phpunit --testsuite MyPSR
用于测试我们的PSR
- 全部标准:
./vendor/bin/phpcs -s -vvv --standard=./src/MyPSR testfile.php
- 仅一个sniff:
./vendor/bin/phpcs -s -vvv --standard=./src/MyPSR --sniffs=MyPSR.Arrays.Multiline testfile.php
- 对于修复器:
./vendor/bin/phpcbf -vvv --standard=./src/MyPSR --sniffs=MyPSR.Arrays.Multiline testfile.php
有用命令
有用命令
- 打印已安装的编码标准列表:
./vendor/bin/phpcs -i
- 打印指定标准中的所有sniff:
./vendor/bin/phpcs -e --standard=PSR2
- 打印每个sniff的文档:
./vendor/bin/phpcs --generator=Text --standard=./src/MyPSR
- 打印单个sniff的文档:
./vendor/bin/phpcs --generator=Text --standard=./src/MyPSR --sniffs=MyPSR.Arrays.Multiline