- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想学习按照标准编写 PHP 代码。我找到了 this文章并(根据其建议)在 sublime text 2 中安装了 phpcs。如果我转到工具 --> phpcode 嗅探器 --> 嗅探这个文件,它会发现语法错误,但不会发现编码标准偏差。 (这是我试图嗅探的代码,我认为它与标准 https://codereview.stackexchange.com/questions/57045/simple-wrapper-for-an-api 有很多偏差)。
docs say to configure phpcs to use a coding standard通过 phpcs_additional_args
。如果我转到 sublimetext2->preferences->package settings->phpcode sniffer->settings user 我会看到以下代码:
"phpcs_additional_args": {
"--standard": "PSR2",
"-n": ""
},
这是我的 full config file .
我的工作流程正确吗?如果是这样,为什么它不发现我的错误?我如何使用 phpcs 自学编码标准?即使知道我正在执行正确的步骤但插件未输出编码标准标记也会有所帮助。
最佳答案
根据您的配置文件,您必须修复一些问题:
以下说明适用于 linux (ubuntu) 或 mac
安装php代码嗅探器
pear 安装 PHP_CodeSniffer
重新加载你的 bash 或 zsh 然后执行命令,如果你不知道该怎么做,只需重新启动你的终端应用程序
哪个phpcs
复制输出并粘贴到 "phpcs_executable_path":
at phpcs config
目前,您将 "phpcs_executable_path":
指向 php,而不是 phpcs,所以这就是它不起作用的原因
安装 php 困惑检测器
pear channel-discover pear.phpmd.org
pear channel -发现 pear.pdepend.org
梨安装 pdepend/PHP_Depend
梨安装 --alldeps phpmd/PHP_PMD
喜欢上面的phpcs
重新加载环境并执行which phpmd
,然后填写"phpmd_executable_path": ""
at phpcs config
安装 php-cs-fixer
sudo wget http://get.sensiolabs.org/php-cs-fixer.phar -O/usr/local/bin/php-cs-fixer
sudo chmod a+x/usr/local/bin/php-cs-fixer
将 "php_cs_fixer_executable_path": ""
更改为 "php_cs_fixer_executable_path": "/usr/local/bin/php-cs-fixer"
安装检查
cd/opt/
git clone --depth=1 https://github.com/facebook/pfff.git
CD 噗噗/
。/配置
依赖
制作
选择
将 "scheck_executable_path"
更改为 "scheck_executable_path": "/opt/pfff/scheck"
注意:您可以使用 sudo pear ...
代替 pear ...
关于php - 如何在sublime中使用phpcs来学习编码标准?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24840924/
场景 有时,我想运行 PHPCS,但让它忽略一个规则,在本例中是 Camel Case Method Name 规则。 我知道我可以创建一个新的规则集,它从另一个规则集继承所有规则集,并排除一个规则集
我有以下代码: /** * @param TranscodingJob $transcodingJob * * @return TranscodingJob * @throws \Lexik\
当我输入 phpcs --version 时,我没有得到版本号,而是得到了这样的信息: /Applications/drupal/php/bin/phpcs: line 2: ?php: No suc
我目前正在清理现有的代码库,其中一个方面涉及使用 PHPCS。这是我的phpcs.xml当前文件: vendor/* node_m
我正在尝试为特定框架“指南”创建自定义规则集。但是,我希望能够将嗅探限制为仅与 .php 或 .phtml 文件类型相关。 这是否可能让 Sniffs 仅使用或忽略定义的文件类型,或者我是否需要在 s
我正在使用 laravel 4.2。 假设有这样一个类: class BShopsController extends ShopsController 为了解决这个问题,我尝试使用命名空间让我们这样说
我了解如何使用 xml 配置 phpcs,但找不到如何禁用某些嗅探。这是我目前的配置(甚至不知道这是否正确):
我在我的机器上运行 Php 7.0,但我需要检查在 7.0 和 5.6 中执行的代码。因此,我得到了 Squiz.Commenting.FunctionComment.ScalarTypeHintMi
我也花了几个小时在谷歌上搜索答案,然后再问,在 phpcs 中我有这个错误“未指定 PHP 版本”,但我在谷歌上找不到答案,最终我遇到了这个“PHP 版本 5”清除了错误,但我感到困惑,因为 PHP
我已经按照 this answer 安装了 phpcs ,并将以下内容添加到我的 Visual Code settings.json: { "phpcs.enable": true,
是否有任何选项可以将 phpcs 修复程序结果的输出存储到文件中? 我试过下面的 phpcs --standard='Symfony' -a 'path' --report-file='~/Users
我在 phpcs.xml 中定义了一些嗅探,如下所示: 我的意图是以细化的方式逐渐收紧 CS 规则(还有更多排除项)。 但是,当我尝试运行 CBF 时,它因相同的嗅探名称而失败: $ .
我尝试为 WordPress 实现一个插件,并使用 phpcs 和 WordPress 标准。 就我而言,问题在于 phpcs 的默认 WordPress 标准也会检查 WordPress-VIP,这
我有一个自定义的 phpcs 规则集文件,我在其中包含了几个规则集,还从某些目录(如测试或供应商)中排除了文件。 完整的 phpcs.xml 配置文件位于 https://github.com/sud
我有一个自定义的 phpcs 规则集文件,我在其中包含了几个规则集,还从某些目录(如测试或供应商)中排除了文件。 完整的 phpcs.xml 配置文件位于 https://github.com/sud
我们在项目中使用 PSR0、PSR1 和 PSR2 标准,但我想从 PSR0 命名空间检查规则中排除特定文件。有没有办法可以在文件中添加注释,所以 phpcs 会忽略这条规则: 每个类必须在至少一个级
PHP 代码嗅探器 phpcs: Can not correctly run the tool with parameters: C:\Users\sa\AppData\Local\Temp\___0
我正在尝试运行 PHP CodeSniffer,但出现错误。 PHP Code Sniffer phpcs: Can not correctly run the tool with parameter
我的 TestMyClass.php 在同一个文件(单元测试类)中有两个类定义,PHP Code Sniffer 提示每个类必须单独在一个文件中 .我怎样才能抑制这个警告? class MyCla
我现在已经花了 2 个多小时试图弄清楚如何在方法声明的同一行中要求 {,而不是默认要求在下一行。我怎样才能完成这个?我已将 PSR2 标准复制到一个名为 PSR2 的新文件夹中,以便能够根据自己的喜好
我是一名优秀的程序员,十分优秀!