Students Save 30%! Learn & create with unlimited courses & creative assets Students Save 30%! Save Now
Advertisement
  1. Code
  2. PHP
Code

Menggunakan PHP CodeSniffer Dengan WordPress: Memasang dan Menggunakan PHP CodeSniffer

by
Length:LongLanguages:

Malay (Melayu) translation by Seurion (you can also view the original English article)

Dalam artikel pertama siri ini, kami menetapkan kod bau dan melihat beberapa contoh tentang apa yang mereka dan bagaimana kami dapat refactor mereka supaya kualiti kod itu diperbaiki. Ingat:

Bau kod [A], juga dikenali sebagai bau yang tidak baik, dalam kod pengaturcaraan komputer, merujuk kepada sebarang gejala dalam kod sumber sesuatu program yang mungkin menunjukkan masalah yang lebih mendalam.

Pada akhirnya, kami sedang berusaha untuk melaksanakan peraturan sniffing kod spesifik WordPress, tetapi sebelum kami melakukannya, penting untuk membiasakan diri dengan PHP CodeSniffer.

Dalam artikel ini, kita akan melihat apa yang PHP CodeSniffer adalah, cara memasangnya, bagaimana untuk menjalankannya terhadap skrip contoh, dan bagaimana refactor mengatakan skrip. Kemudian kita akan melihat bagaimana kita akan bergerak ke hadapan ke kod khusus WordPress.

Jika anda mempunyai persekitaran pembangunan setempat, maka hebat; jika tidak, itu baik-baik saja. Saya akan menyediakan beberapa pautan yang akan membantu anda dan berjalan dengan cepat.

Dengan itu, mari kita mulakan.

Prasyarat

Sebelum memulakan, penting bahawa anda mempunyai beberapa jenis persekitaran pembangunan tempatan, walaupun ini hanya termasuk salinan penterjemah PHP.

Anda Boleh Sudah Salin

Ambil perhatian bahawa jika anda menjalankan varian Linux atau OS X, ada kemungkinan anda sudah memasang PHP. Sekiranya anda melakukannya, maka anda tidak perlu risau tentang apa-apa perkara lain dalam bahagian ini. Untuk menentukan sama ada anda memasang PHP, jalankan arahan berikut pada baris arahan:

Anda harus melihat sesuatu seperti berikut (walaupun output anda mungkin berbeza berdasarkan versi PHP yang telah anda pilih untuk dijalankan):

Jika anda lebih maju dan mempunyai banyak salinan projek yang dipasang, maka anda boleh menjalankan:

Dan anda harus melihat sesuatu seperti ini:

Walaupun keluaran anda akan berbeza-beza berdasarkan di mana salinan PHP anda dipasang.

Tetapi Jika Anda Tidak, Itu Baiklah!

Walaupun siri ini ditujukan terutamanya kepada pemula, mungkin ada antara anda yang selesa dengan memuat turun satu salinan PHP dan memasangnya pada sistem anda. Jika ini adalah anda, kemudian ambil salinan PHP dari halaman utama projek, pasangnya, dan kembali ke tutorial ini.

Jika, sebaliknya, ini baru kepada anda maka anda boleh memilih untuk menggunakan salah satu pemasang untuk sistem pengendalian anda di laman utama PHP yang dipautkan di atas atau salah satu utiliti yang disediakan di bawah.

Semua pakej ini mempunyai pemasang mereka sendiri dan akan memasang PHP, MySQL, dan Apache. Seperti yang dinyatakan sebelum ini, kami amat prihatin dengan memiliki salinan PHP yang tersedia pada sistem kami.

Setelah ini dipasang, cuba jalankan perintah yang disebut di bahagian pertama seksyen ini (atau setara sistem anda) dan anda harus melihat output yang serupa.

Jika anda tidak, maka anda mungkin perlu menambah laluan ke PHP ke pembolehubah persekitaran anda. Ini adalah di luar skop tutorial ini, jadi sila rujuk dokumentasi untuk versi projek yang anda pasang.

Dengan PHP kini dipasang, kami bersedia untuk memulakan dengan menangkap dan membersihkan kod kami.

Apa itu PHP CodeSniffer?

Anda boleh menemui perisian PHP CodeSniffer pada GitHub rasmi.

PHP CodeSniffer on GitHub

Daripada dokumentasi projek:

PHP_CodeSniffer adalah satu set dua skrip PHP; skrip phpcs utama yang menyentuh fail PHP, JavaScript dan CSS untuk mengesan pelanggaran standard pengekodan yang ditetapkan, dan skrip phpcbf kedua untuk secara automatik membetulkan pelanggaran standard pengekodan. PHP_CodeSniffer adalah alat pembangunan penting yang memastikan kod anda tetap bersih dan konsisten.

Jika anda tidak pernah melihat sesuatu seperti ini sebelum ini, ia kelihatan sangat kemas, bukan? Maksud saya, itu alat yang dimaksudkan untuk membantu memastikan tahap mutu tertentu dalam kod anda!

Walaupun projek tersebut menyebut bahasa seperti CSS dan JavaScript, kami memberi tumpuan kepada PHP dalam siri ini. Ini tidak bermakna ia tidak penting untuk memeriksa kualiti fail bahasa tertentu dalam projek anda, walaupun.

Sebaik sahaja kedengarannya, ia masih menimbulkan persoalan: Bagaimana kita memasang perisian itu, dan bagaimana kita mula menyemak kod kami?

Mari jawab kedua soalan itu sekarang.

1. Memasang Perisian

Sekiranya anda melakukan carian Google untuk memasang PHP CodeSniffer, kemungkinan anda akan berakhir dengan berbagai keputusan, yang kebanyakannya termasuk menggunakan sesuatu yang dipanggil Pear.

Pear pernah menjadi sistem pengedaran pakej de-facto untuk perpustakaan PHP, dan walaupun banyak pakej masih tersedia melalui perisian, ia juga telah bersara daripada pakej popular lain (seperti PHPUnit).

Atas sebab ini, saya sering mengesyorkan menggunakan kaedah pemasangan lain apabila ia tersedia. Ini termasuk menggunakan alat seperti Komposer, yang boleh dikatakan perisian pengurusan pergantungan yang paling popular untuk PHP.

The Composer Homepage

Jika anda tidak pernah menggunakan Komposer sebelum ini, jangan risau. Saya akan menyediakan semua langkah yang anda perlukan untuk mendapatkan PHP CodeSniffer dan berjalan pada mesin anda dengan Komposer dan dengan kerja yang minimum. Jika anda berminat untuk belajar lebih banyak, kami mempunyai beberapa tutorial tentang cara menggunakan Komposer, jadi jangan ragu untuk menyemaknya.

Memasang Komposer

Sebelum memasang PHP CodeSniffer, kita perlu memasang Komposer. Untungnya, sangat mudah untuk melakukannya apabila anda mempunyai PHP dan berjalan di mesin tempatan anda.

Untuk memasang Komposer, anda boleh memuat turun fail ini dan kemudian laksanakan arahan berikut pada baris arahan dari mana sahaja anda memuat turun pemasang Komposer:

Nota dari arahan pemasangan Komposer:

Anda boleh memasang Composer ke direktori tertentu dengan menggunakan pilihan --install-dir dan tambahan (semula) nama serta menggunakan pilihan --filename.

Untuk mendapatkan maklumat lanjut, sila rujuk arahan muat turun atau lihat keseluruhan projek di GitHub.

Sebaik sahaja ia dipasang, anda kini boleh menggunakan Komposer untuk memasang kebergantungan pihak ketiga, seperti PHP CodeSniffer, ke dalam projek anda. Perhatikan di mana anda telah memasang salinan Komposer anda, walaupun. Anda perlu merujuknya semasa menjalankannya kerana kami akan menjalankannya dari baris arahan.

Bagaimanapun, mari pergi dan buat direktori yang mana kita akan menjalankan skrip PHP kami. Walaupun kita tidak akan mempunyai apa-apa dalam direktori ini lagi, kita perlu membuat fail bernama composer.json.

Saya akan memanggil direktori tutsplus-demo saya, dan saya akan memasukkan fail Komposer saya dalam direktori itu untuk bermula.

The initial project directory

Sebaik sahaja anda mempunyai fail yang dibuat, letakkan kod berikut dalam fail JSON:

Pendek kata, ini memberitahu Composer untuk memasang PHP CodeSniffer apabila anda melaksanakan arahan yang betul. Perhatikan bahawa arahan yang memerlukan perkara berikut:

Senarai pakej yang diperlukan oleh pakej ini. Pakej tidak akan dipasang melainkan syarat-syarat tersebut boleh dipenuhi.

Anda boleh membaca lebih lanjut mengenai skema Komposer dalam dokumentasi.

Sekali Komposer dipasang dan sebaik sahaja anda mempunyai fail komposer.json anda seperti kod di atas, sudah tiba masanya untuk memasang PHP CodeSniffer. Dari baris arahan, mengeluarkan arahan berikut:

Perhatikan bahawa ini berasaskan idea Komposer tersedia secara terbuka pada sistem anda. Jika tidak, anda boleh melaksanakannya dengan menaip laluan penuh ke fail yang dipasang atau anda boleh menambahkannya kepada pembolehubah persekitaran anda dan kemudian mulakan semula sesi terminal anda untuk memuatkan semula pembolehubah.

Setelah Komposer selesai bekerja, anda harus melihat sesuatu seperti ini:

PHP CodeSniffer installed successfully via Composer

Dan direktori tutsplus kod anda sekarang akan kelihatan seperti ini:

tutsplus-demo with the new vendor directory containing PHP CodeSniffer

Perhatikan secara khusus bahawa anda mempunyai direktori penjual. Ini bermakna bahawa Composer dipasang dengan betul PHP CodeSniffer. Pada ketika ini, kami bersedia menilai kod PHP kami.

2. Menilai Skrip

Pertama, mari kita ambil skrip sampel. Yang kita lihat akan dapat dijumpai dalam jawapan ini pada Stack Overflow.

Buat fail dalam direktori tutsplus demo anda dan namakan ia sample.php. Kemudian, pastikan fail mengandungi kandungan berikut:

Simpan kerja anda. Seterusnya, kami boleh menjalankan PHP CodeSniffer dari baris arahan dan menilai kod dalam skrip di atas menggunakan set peraturan standard.

Dari terminal anda, masukkan arahan berikut:

Ini perlu menghasilkan output yang mengandungi perkara berikut:

Perhatikan bahawa ia mendapati empat kesilapan. Lajur pertama memberitahu anda garisan yang mana kesilapan sedang berlaku, lajur kedua menyatakan bahawa ia adalah ralat (berbanding amaran), dan selebihnya memberitahu anda apa yang diharapkan untuk dilihat berbanding apa yang sebenarnya dilihatnya.

Oleh itu, mari bersihkan fail berdasarkan ralat tersebut. Secara umumnya, kita perlu melakukan perkara-perkara berikut:

  1. Tambah ulasan dokumentasi peringkat fail.
  2. Tambah ruang selepas koma dalam panggilan ke fungsi pada fail baris.
  3. Tambah ruang selepas if pernyataan dalam skrip.

Hasil akhirnya akan kelihatan seperti ini:

Seterusnya, jalankan skrip sekali lagi dan anda tidak sepatutnya mendapat sebarang output. Iaitu, anda perlu dibentangkan dengan arahan arahan piawai. Kadang-kadang ini bermakna sesuatu telah rosak, tetapi dalam kes ini ia bermakna semuanya berjalan seperti yang diharapkan

Tidak buruk, bukan?

Sekarang bayangkan apa yang boleh dilakukan untuk kod dan skrip yang lebih besar yang anda bekerjasama setiap hari.

Ia Bukan Crutch

Sebaiknya untuk menilai kod kami, untuk mengelakkan kod yang berbau, dan untuk mencapai kualiti tertinggi mungkin, alat seperti PHP CodeSniffer tidak dimaksudkan untuk digunakan sebagai tongkat. Ini bermakna kita tidak mempunyai alasan untuk menulis kod buruk kerana alat lain akan menangkapnya.

Kerana ia tidak akan selalu berbuat demikian.

Sebaliknya, ini dimaksudkan sebagai kelebihan kedua. Iaitu, ia bertujuan untuk menangkap perkara-perkara yang mungkin kita terlepas ketika menulis kod waktu pertama, kedua, atau sembilan. Perkara yang baik mengenai program ini ialah anda boleh memuatkan peraturan yang berbeza ke dalam PHP CodeSniffer bergantung kepada persekitaran, kerangka kerja, atau perpustakaan yang anda kerjakan.

Dan itulah yang akan kita lakukan dengan WordPress dalam artikel seterusnya.

Kesimpulan

Setakat bahan pengenalan, kami telah membahas beberapa perkara dalam tutorial ini. Iaitu, kami telah melihat persekitaran pembangunan asas pada mesin tempatan kami yang merangkumi PHP.

Seterusnya, kami telah melihat Komposer dan bagaimana untuk memasangnya pada sistem kami. Kami telah menulis fail Komposer pertama kami untuk mendapatkan semula dependencies, iaitu PHP CodeSniffer, dan kami telah menilai dan membetulkan hasil yang diberikan kepada kami oleh perisian.

Jika anda terutamanya pemaju PHP, maka saya berharap dua artikel pertama dalam siri ini membantu, tetapi jika anda seorang pemaju WordPress maka kami mempunyai sedikit lebih untuk menutup.

Dalam artikel akhir dalam siri ini, kami akan mengalih perhatian kami kepada WordPress. Kerana ia mempunyai set standard pengekodan sendiri, kami akan melihat bagaimana untuk memuatkan peraturan-peraturan ini ke PHP CodeSniffer dan kemudian menilai plugin, kod tema, dan sebagainya untuk mendapatkan idea bagaimana untuk menggunakannya dalam hari kami- kerja hari ini dalam projek WordPress kami.

Sebelum kita bergerak maju ke artikel seterusnya, semak kod di atas dan pastikan anda mempunyai PHP dan PHP CodeSniffer dipasang dan anda sudah biasa dengan cara ia berfungsi, kerana kami akan mengikat semua ini bersama-sama.

Akhirnya, anda boleh menyemak semua kursus dan tutorial saya di halaman profil saya, dan anda boleh mengikuti saya di blog dan/atau Twitter saya di @tommcfarlin di mana saya bercakap mengenai pelbagai amalan pembangunan perisian terutamanya dalam konteks WordPress.

Tolong jangan teragak-agak untuk meninggalkan apa-apa soalan atau komen dalam suapan di bawah, dan saya berhasrat untuk memberi respons kepada masing-masing.

Rujukan

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.