2012-12-07 33 views

Trả lời

26

Thử chạy lệnh sau đây và xem nếu nó tạo ra những gì bạn muốn:

phpcs /path/to/code --standard=Squiz --sniffs=Squiz.Commenting.FunctionComment,Squiz.Commenting.FunctionCommentThrowTag,Squiz.Commenting.ClassComment,Squiz.Commenting.FileComment,Squiz.Commenting.VariableComment

Nếu có, bạn có thể tạo tiêu chuẩn của riêng bạn mà chỉ bao gồm những ngửi, và bất cứ điều gì khác mà bạn muốn kiểm tra . Bạn làm điều này bằng cách tạo một tệp ruleset.xml và sử dụng tệp đó làm tiêu chuẩn của bạn.

Ví dụ, bạn có thể tạo một tập tin gọi mystandard.xml và bao gồm các nội dung sau đây:

<?xml version="1.0"?> 
<ruleset name="MyStandard"> 
    <description>My custom coding standard.</description> 
    <rule ref="Squiz.Commenting.FunctionComment" /> 
    <rule ref="Squiz.Commenting.FunctionCommentThrowTag" /> 
    <rule ref="Squiz.Commenting.ClassComment" /> 
    <rule ref="Squiz.Commenting.FileComment" /> 
    <rule ref="Squiz.Commenting.VariableComment" /> 
</ruleset> 

Sau đó, bạn có thể chạy lệnh này để thay thế:

phpcs /path/to/code --standard=/path/to/mystandard.xml 

Có những điều khác mà bạn có thể làm trong tệp ruleset.xml. Xem các tài liệu ở đây: https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml

+1

Câu trả lời này là từ năm 2012. Nó vẫn chính xác. Nhưng tôi sẽ thêm rằng ngày hôm nay, bạn cũng có thể sử dụng Generic.Commenting.Doc sniff. Những sniff này hoạt động hơi khác một chút, vì vậy hãy chọn một loại phù hợp nhất với phong cách của bạn. – mkasberg

5

Trong năm 2017 bạn có bây giờ nhiều lựa chọn:

  • một trong những tốt nhất ngửi để kiểm tra docblocks là TypeHintDeclarationSniff from SlevomatCodingStandard, hoạt động tốt với PHP 7, PHP 7.1, thả tài liệu không sử dụng vv .
  • bạn cũng có thể tận dụng một công cụ khác - PHP-CS-Fixer, có bạn có thể tìm thêm fixers, mà sẽ giúp bạn với docblock, chỉ cần tìm kiếm "doc"