Dùng tools để check coding convention php
PHPCS
Phổ biến nhất là thư viện/plugin mà có thể dùng với text editer: phpcs
.
Tên đầy đủ là PHP_CodeSniffer
.
Cách cài đặt
Tham khảo tại README của repo này.
Chọn chuẩn coding-style
Kiểm tra các chuẩn đã được cài đặt:
phpcs -i
# The installed coding standards are MySource, PEAR, PSR1, PSR12, PSR2, Squiz and Zend
Sau khi cài đặt thì đặt lại chuẩn convention theo mong muốn.
Dưới đây thì mình dùng chuẩn PSR2
.
phpcs --config-set default_standard PSR2
Chuẩn này cảm giác khá thoải mái nhất là không khắt khe về chuyện phải comment mỗi file/function không.
Mỗi lần không cần viết comment mà cứ gặp mess: Missing doc comment for file/function
.
Rules theo Framework
Phalcon
framework Phalcon
dùng chuẩn PSR12
thì là:
phpcs --config-set default_standard PSR12
Laravel
Theo như docs của laravel:
https://laravel.com/docs/8.x/contributions#coding-style
Thì dùng chuẩn sau:
Tuy nhiên theo như trang chuẩn PSR-2
bên trên đã nói, rằng chuẩn này đã không còn được hô trợ nữa từ 2019 mà chuyển sang chuẩn PSR-12.
Tự đặt chuẩn convention của mình
https://ncona.com/2012/12/creating-your-own-phpcs-standard/
Tự động fix lỗi cho mình 1 hoặc nhiều file
https://github.com/squizlabs/PHP_CodeSniffer/wiki/Fixing-Errors-Automatically
Ta dùng phpcbf
vốn là viết tắt của PHP Code Beautifier and Fixer
.
Trước tiên là xem nó định fix code của mình thành như thế nào đã:
phpcs --report=diff /path/to/code
Giờ sử dụng phpcbf
sửa các file trong thư mục:
phpcbf /path/to/code
intelephense
intelephense - thư viện/ plugin text editer hỗ trợ việc coding.
Mình hay dùng để kiểm tra xem trong src code thư viện nào khai báo mà lại không dùng.
Thư viện này nếu trả phí sẽ có thêm vài chức năng khác nữa.
Code Spell Checker
Check xem đã đúng ngữ pháp, từ vựng tiếng Anh/code chưa.
Link cho vscode:
https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker
Các editor có extentions hỗ trợ
- Atom
- vscode