Tôi đã gặp sự cố với PHPCS khi sử dụng tiêu chuẩn PSR2. Đã tìm kiếm cao và thấp nhưng với sự ngạc nhiên của tôi, tôi không thể tìm thấy bất kỳ ai báo cáo cùng một vấn đề.PSR2 với khai báo lớp mở rộng các lớp với không gian tên trong Mã PHP Sniffer
Nói rằng tôi có một khai báo lớp như sau:
<?php
class MyChildClass extends \SomeNameSpace\MyParentClass
{
}
Sau đó, tôi chạy nó thông qua PHPCS với:
bash-3.2$ phpcs -s --standard=PSR2 test.php
FILE: test.php
--------------------------------------------------------------------------------
FOUND 2 ERROR(S) AFFECTING 1 LINE(S)
--------------------------------------------------------------------------------
3 | ERROR | Expected 0 spaces between "SomeNameSpace" and comma; $1 found
| | (PSR2.Classes.ClassDeclaration.SpaceBeforeComma)
3 | ERROR | Expected 1 space before "MyParentClass"; 13 found
| | (PSR2.Classes.ClassDeclaration.SpaceBeforeName)
--------------------------------------------------------------------------------
Time: 0 seconds, Memory: 4.00Mb
Ngoài ra:
Bash-3.2$ phpcs --version
PHP_CodeSniffer version 1.3.6 (stable) by Squiz Pty Ltd. (http://www.squiz.net)
Có ai đi qua đây? Tôi có làm điều gì sai? Nếu không tôi sẽ đi đầu tiên vào mã sniffer - mà không cảm thấy đúng.