Peringatan
Repositori ini telah ditinggalkan. Penggantinya adalah phpcsstandards/php_codesniffer
Lihat masalah #3932 untuk informasi lebih lanjut.
PHP_CODESNIFFER adalah seperangkat dua skrip PHP; Script phpcs
utama yang tokenisasi file PHP, JavaScript dan CSS untuk mendeteksi pelanggaran standar pengkodean yang ditentukan, dan skrip phpcbf
kedua untuk secara otomatis memperbaiki pelanggaran standar pengkodean. PHP_CODESNIFFER adalah alat pengembangan penting yang memastikan kode Anda tetap bersih dan konsisten.
PHP_CODESNIFFER membutuhkan PHP Versi 5.4.0 atau lebih besar, meskipun sniff individu mungkin memiliki persyaratan tambahan seperti aplikasi dan skrip eksternal. Lihat halaman manual opsi konfigurasi untuk daftar persyaratan ini.
Jika Anda menggunakan php_codesniffer sebagai bagian dari tim, atau Anda menjalankannya di server CI, Anda mungkin ingin mengonfigurasi pengaturan proyek Anda menggunakan file konfigurasi.
Cara termudah untuk memulai dengan php_codesniffer adalah dengan mengunduh file phar untuk masing -masing perintah:
# Download using curl curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar # Or download using wget wget https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar wget https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar # Then test the downloaded PHARs php phpcs.phar -h php phpcbf.phar -h
Jika Anda menggunakan komposer, Anda dapat menginstal sistem php_codesniffer di seluruh dengan perintah berikut:
Composer Global membutuhkan "Squizlabs/php_codesniffer =*"
Pastikan Anda memiliki komposer bin dir di jalan Anda. Nilai defaultnya adalah ~/.composer/vendor/bin/
, tetapi Anda dapat memeriksa nilai yang perlu Anda gunakan dengan menjalankan composer global config bin-dir --absolute
.
Atau sebagai alternatif, sertakan ketergantungan untuk squizlabs/php_codesniffer
dalam file composer.json
Anda. Misalnya:
{"membutuhkan-dev": {"Squizlabs/php_codesniffer": "3.*"} }
Anda kemudian dapat menjalankan php_codesniffer dari direktori vendor bin:
./vendor/bin/phpcs -h ./vendor/bin/phpcbf -h
Jika Anda menggunakan pne, Anda dapat menginstal php_codesniffer sebagai alat proyek menggunakan perintah berikut:
PHIVE INSTAL PHPCS PHIVE INSTAL PHPCBF
Anda kemudian dapat menjalankan php_codesniffer dari direktori alat:
./tools/phpcs -h ./tools/phpcbf -h
Jika Anda menggunakan pir, Anda dapat menginstal php_codesniffer menggunakan penginstal pir. Ini akan membuat perintah phpcs
dan phpcbf
segera tersedia untuk digunakan. Untuk menginstal php_codesniffer menggunakan penginstal pir, pertama pastikan Anda telah menginstal pir dan kemudian jalankan perintah berikut:
Pear Instal PHP_CODESNIFFER
Anda juga dapat mengunduh sumber php_codesniffer dan menjalankan perintah phpcs
dan phpcbf
langsung dari klon git:
git clone https://github.com/squizlabs/php_codesniffer.gitcd php_codesniffer PHP BIN/PHPCS -H php bin/phpcbf -h
Standar pengkodean default yang digunakan oleh php_codesniffer adalah standar pengkodean pir. Untuk memeriksa file terhadap standar pengkodean pir, cukup tentukan lokasi file:
phpcs /path/to/code/myfile.php
Atau jika Anda ingin memeriksa seluruh direktori, Anda dapat menentukan lokasi direktori alih -alih file.
phpcs/path/to/code-directory
Jika Anda ingin memeriksa kode Anda terhadap standar pengkodean PSR-12, gunakan argumen baris perintah --standard
:
phpcs --Standard = psr12/path/to/code-directory
Jika PHP_CODESNIFFER menemukan kesalahan standar pengkodean, laporan akan ditampilkan setelah menjalankan perintah.
Informasi penggunaan penuh dan contoh laporan tersedia di halaman penggunaan.
Dokumentasi untuk PHP_CODESNIFFER tersedia di Github Wiki.
Laporan bug dan permintaan fitur dapat dikirimkan pada pelacak masalah GitHub.
Lihat Kontribusi.MD untuk informasi.
Php_codesniffer menggunakan format nomor versi MAJOR.MINOR.PATCH
.
Versi MAJOR
bertambah saat:
Perubahan yang tidak kompatibel ke belakang dibuat untuk bagaimana perintah phpcs
atau phpcbf
digunakan, atau
Perubahan yang tidak kompatibel ke belakang dilakukan pada format ruleset.xml
, atau
Perubahan yang tidak kompatibel ke belakang dilakukan pada API yang digunakan oleh pengembang mengendus, atau
Jenis token PHP_CODESNIFFER khusus dilepas, atau
Sniff yang ada dihapus dari php_codesniffer sepenuhnya
Versi MINOR
bertambah saat:
Fitur baru yang kompatibel dengan mundur ditambahkan ke perintah phpcs
dan phpcbf
, atau
Perubahan yang kompatibel dengan mundur dilakukan pada format ruleset.xml
, atau
Perubahan yang kompatibel dengan kemunduran dilakukan pada API yang digunakan oleh pengembang mengendus, atau
Sniff baru ditambahkan ke standar yang disertakan, atau
Sniff yang ada dihapus dari standar yang disertakan
CATATAN: Perubahan yang kompatibel dengan API yang digunakan oleh pengembang sniff akan memungkinkan sniff yang ada untuk terus berjalan tanpa menghasilkan kesalahan fatal tetapi mungkin tidak mengakibatkan sniff melaporkan kesalahan yang sama seperti sebelumnya tanpa diperlukan perubahan.
Versi PATCH
bertambah saat:
Perbaikan bug yang kompatibel ke belakang dibuat
Catatan: Karena PHP_CODESNIFFER ada untuk melaporkan dan memperbaiki masalah, sebagian besar bug adalah hasil dari kesalahan pengkodean kesalahan standar yang salah dilaporkan atau pengkodean kesalahan standar tidak dilaporkan kapan seharusnya. Ini berarti bahwa pesan yang dihasilkan oleh PHP_CODESNIFFER, dan perbaikan yang dibuatnya, cenderung berbeda antara versi tambalan.