2

我刚刚开始使用 Code Sniffer 来清理我的代码。

我发现 Code Sniffer 将 php 的内置函数名称作为错误捕获。例如:

在网上if($mysqli->connect_error === true) {我收到一条消息:

变量“connect_error”不是有效的驼峰大写格式。

我选择使用 Zend 标准,因为它显示了很多清理要点,并且希望在将来使用它。

所以问题是——你怎么做呢?- 忽略这些错误 - 修复 php 代码嗅探器以忽略 php 内置函数名称 - 使用其他标准?- 还要别的吗?

感谢您的建议!

安德里斯

4

2 回答 2

5

这是由于 Zend 标准不完整且不经常更新。PHP_CodeSniffer 中的 Zend 标准实际上根本不是一个完整的标准。它只是一些在 Zend 工作的人(很久以前)编写的嗅探集合。

如果您想开始清理您的代码,我建议您从 PEAR 或 PSR2 标准开始。PEAR 相当成熟,而 PSR2 非常新,但两者都将帮助您获得漂亮干净的代码。PEAR 标准将有助于保持文档注释的一致性,而 PSR2 则不会,因此请记住这一点。这些都不会抱怨 mysqli 函数。

PHP_CodeSniffer 也带有 Squiz 标准,但这是非常严格的。可能一开始就太严格了。

您还可以通过混合所有部分来创建自己的标准,但最好先从一个完整的标准开始,这样您就可以了解所有检查的完成位置。

于 2013-01-07T23:35:36.190 回答
-1

你怎么办?- 忽略这些错误 - 修复 php 代码嗅探器以忽略 php 内置函数名称 - 使用其他标准?- 还要别的吗?

好问题。

小心忽略错误,通常你也会忽略一些你确实想知道的东西。

我的建议是,在您忽略任何错误报告之前,您应该多浏览一下 Code Sniffer 文档,看看是否可以找到此设置。

另外,请记住,仅仅因为错误消息说明了一件事,它可能并不一定意味着它所说的内容。例如,当您收到“意外字符串”之类的错误时,通常意味着您忘记了某个;或某事。因此,请查看您的代码以确认没有任何语法错误。(即@DavidHoude 提出了一个很好的观点:“ $mysqli>connect_error === true”可能需要 a->而不是 a >

于 2013-01-07T18:13:52.813 回答