2

Code Sniffer を使用してコードをクリーンアップし始めたところです。

Code Sniffer が php の組み込み関数名をエラーとしてキャッチすることがわかりました。例えば:

オンラインif($mysqli->connect_error === true) {で次のメッセージが表示されます。

変数 "connect_error" は有効なキャメル キャップ形式ではありません。

Zend 標準はクリーンアップのポイントが多く、今後も使用したいと考えているため、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 のドキュメントをもう少し調べて、この設定を見つけることができるかどうかを確認することをお勧めします。

また、エラー メッセージが 1 つのことを示しているからといって、必ずしもその内容を意味しているとは限らないことに注意してください。たとえば、「予期しない文字列」のようなエラーが表示された場合、通常は a;または何かを忘れたことを意味します。したがって、コードを見て、構文エラーがないことを確認してください。(つまり、@DavidHoude は良い点を指摘しました: " " は aではなく a$mysqli>connect_error === trueを必要とする可能性があります)->>

于 2013-01-07T18:13:52.813 に答える