Menyahpepijat dalam Laravel: Cara Mencari dan Membetulkan Ralat dalam Laravel Aplikasi

Penyahpepijatan ialah bahagian penting dalam Laravel proses pembangunan, membolehkan anda memahami dan menyelesaikan isu dalam aplikasi anda. Laravel menyediakan pelbagai alat dan ciri untuk membantu menyahpepijat, membantu anda mengenal pasti punca ralat dan menanganinya. Berikut ialah panduan asas tentang penyahpepijatan dalam Laravel:

Paparkan Mesej Ralat

Laravel Persekitaran pembangunan dikonfigurasikan untuk memaparkan mesej ralat terperinci apabila ralat berlaku. Pastikan anda bekerja dalam persekitaran pembangunan dan mesej ralat akan dipaparkan terus dalam penyemak imbas.

 

Gunakan dd() Fungsi

Fungsi dd()(dump and die) ialah alat yang berguna untuk memeriksa dan memaparkan pembolehubah, tatasusunan atau objek semasa pelaksanaan. Anda boleh gunakan dd() untuk menyemak data dan memeriksa keadaannya.

$data = ['name' => 'John', 'age' => 25];  
dd($data);  

Apabila menemui dd() fungsi, Laravel akan menghentikan pelaksanaan dan memaparkan maklumat terperinci tentang $data pembolehubah.

 

Gunakan Fail Log

Laravel menyediakan kaedah untuk log maklumat dan ralat ke dalam fail log. Anda boleh menggunakan kaedah seperti info(), error(), debug(), dsb., untuk log semasa pelaksanaan. Fail log disimpan dalam storage/logs direktori.

 

Berikut ialah contoh menggunakan log masuk fail Laravel

Pertama, pastikan Laravel dikonfigurasikan untuk log mesej. Buka .env fail dan pastikan LOG_CHANNEL pembolehubah ditetapkan kepada 'daily' atau 'stack'(jika ia belum ditetapkan):

LOG_CHANNEL=daily

Dalam kod anda, anda boleh menggunakan Log fasad untuk menulis mesej log. Berikut adalah contoh

use Illuminate\Support\Facades\Log;  
  
public function example()  
{  
    Log::info('This is an information log message.');  
  
    Log::warning('This is a warning log message.');  
  
    Log::error('This is an error log message.');  
}  

Dalam contoh ini, kami menggunakan info(), warning(), dan error() kaedah fasad Log untuk log pelbagai jenis mesej. Anda boleh menggunakan kaedah ini untuk log mesej pada pelbagai peringkat log.

Secara lalai, Laravel log disimpan dalam storage/logs direktori. Anda boleh mengakses fail log dalam direktori itu untuk melihat mesej log. Fail log disusun mengikut tarikh.

Untuk menulis mesej log dengan konteks atau data tambahan, anda boleh menghantar tatasusunan sebagai hujah kedua kepada kaedah log.

Log::info('User created', ['user_id' => 1]);

Dalam kes ini, data konteks tambahan(user_id = 1) akan disertakan dalam mesej log

Anda juga boleh membuat saluran log tersuai dan mengkonfigurasinya dalam config/logging.php fail. Ini membolehkan anda memisahkan log untuk bahagian aplikasi anda yang berlainan atau menggunakan konfigurasi storan log yang berbeza.

 

guna Laravel Telescope

Laravel Telescope ialah alat penyahpepijatan yang berkuasa dan mudah untuk Laravel. Ia menyediakan antara muka web untuk memantau dan menganalisis permintaan, pertanyaan pangkalan data, baris gilir dan banyak lagi. Untuk menggunakan Teleskop, anda perlu memasang dan mengkonfigurasinya dalam Laravel aplikasi anda.

 

Gunakan Xdebug dan Debugging IDE

Xdebug ialah alat penyahpepijatan yang popular digunakan dalam Laravel dan banyak projek PHP lain. Dengan memasang Xdebug dan menggabungkannya dengan IDE penyahpepijatan seperti PhpStorm, anda boleh menjejak dan memeriksa keadaan pelaksanaan kod PHP anda, menetapkan titik putus, memeriksa pembolehubah dan menggunakan ciri penyahpepijatan yang lain.

 

Dengan alat dan ciri di atas, anda boleh nyahpepijat dan menyelesaikan masalah Laravel aplikasi anda dengan mudah.