Rumah > rangka kerja php > Laravel > laravel menunjukkan mesej ralat

laravel menunjukkan mesej ralat

PHPz
Lepaskan: 2023-05-26 13:50:37
asal
890 orang telah melayarinya

Laravel ialah rangka kerja web PHP popular yang menyediakan banyak ciri mudah untuk memudahkan pembangunan web. Walau bagaimanapun, seperti mana-mana aplikasi lain, ralat boleh berlaku dengan Laravel. Dalam artikel ini, kami akan membincangkan cara memaparkan mesej ralat dalam Laravel untuk pemahaman dan penyelesaian isu yang lebih baik.

Laravel menyediakan banyak alatan dan teknik yang boleh digunakan untuk nyahpepijat, termasuk tahap pengelogan yang berbeza, bar nyahpepijat, penjejakan ralat dan banyak lagi. Semua ciri ini direka bentuk untuk memudahkan pembangun mendiagnosis sebarang isu dalam aplikasi Laravel. Perkara yang paling penting semasa proses ini ialah keupayaan untuk menangkap dan memaparkan mesej ralat. Dalam Laravel, kita boleh menggunakan kaedah berikut untuk memaparkan mesej ralat:

  1. Menggunakan ciri pengelogan Laravel

Ciri pengelogan Laravel ialah alat yang sangat berkuasa, Pelbagai jenis mesej ralat boleh ditangkap. Ia membolehkan anda melog maklumat daripada pelbagai bahagian aplikasi anda dan menyimpannya dalam fail log boleh dikonfigurasikan. Secara lalai, Laravel menggunakan pustaka Monolog untuk pengelogan, tetapi anda boleh menukar tingkah laku ini pada bila-bila masa.

Untuk log ralat, anda boleh menggunakan satu siri kaedah fasad Log, seperti kaedah log(), nyahpepijat(), info(), amaran() dan ralat(). Jika anda ingin log ralat, anda boleh menggunakan kaedah ralat(). Ia akan mencipta entri log tahap ralat dalam fail log dengan butiran tentang kejadian ralat.

Sebagai contoh, kod berikut akan log mesej ralat dan menambahkannya pada fail log:

use IlluminateSupportFacadesLog;
...
try {
    // some code
} catch (Exception $e) {
    Log::error('Error message: '.$e->getMessage().', Error code: '.$e->getCode());
}
Salin selepas log masuk

Ini akan menambah kemasukan log peringkat ralat pada fail log yang mengandungi maklumat tentang yang ditangkap Butiran pengecualian. Ini sangat berguna kerana ia membolehkan anda memahami inti masalah dan di mana anda harus mula menyelesaikannya.

  1. Gunakan fungsi error_reporting() PHP

PHP menyediakan pengendali ralat terbina dalam yang boleh mengendalikan ralat dan amaran masa jalan. Dalam aplikasi Laravel, anda boleh menggunakan fungsi error_reporting() PHP untuk mengawal ralat yang harus dipaparkan pada skrin.

Cara menggunakan fungsi error_reporting():

  • Tetapkan tahap ralat untuk keseluruhan aplikasi
// set error reporting level to E_ALL
error_reporting(E_ALL); 

// or, hide all errors
error_reporting(0); 
Salin selepas log masuk
  • Tetapkan ralat untuk Tahap blok kod tertentu
// set error reporting level to E_ALL
error_reporting(E_ALL);
// some code

// set error reporting level to 0
error_reporting(0);
// some other code
Salin selepas log masuk

Di sini anda boleh melihat cara menggunakan fungsi error_reporting() untuk mengawal tahap ralat yang harus dipaparkan pada skrin. Jika anda menetapkan tahap ralat kepada E_ALL, semua ralat akan dipaparkan, yang amat berguna untuk menyahpepijat aplikasi. Jika anda ingin melumpuhkan mesej ralat dalam persekitaran pengeluaran, anda boleh menetapkan tahap ralat kepada 0.

  1. Menggunakan pengendali ralat tersuai

Anda boleh menggunakan Pengendali Pengecualian Laravel untuk menangkap dan mengendalikan pengecualian masa jalan. Dalam Laravel, secara lalai, semua pengecualian dihantar ke dalam kelas AppExceptionsHandler untuk pengendalian. Anda boleh menggunakan kaedah render() dalam kelas ini untuk menyesuaikan pengendali ralat dan memaparkan mesej ralat pada skrin.

Sebagai contoh, kod berikut akan menangkap pengecualian daripada kelas Pengendali dan memaparkan mesej pengecualian pada skrin:

public function render($request, Exception $exception)
{
    if($exception instanceof CustomException) {
        return response()->view('errors.custom', [], 500);
    }

    return parent::render($request, $exception);
}
Salin selepas log masuk

Di sini, kami mengendalikan pengecualian yang dipanggil CustomException dan memberikan respons () Objek segera mengeluarkan mesej ralat ke paparan tersuai.

  1. Menggunakan bar nyahpepijat Laravel dalam mod pembangunan

Laravel menyediakan bar nyahpepijat yang sangat berguna yang boleh membantu anda menjejaki masalah dalam aplikasi anda dengan cepat. Dalam mod pembangunan, bar nyahpepijat akan muncul secara automatik di bahagian atas halaman yang mengandungi pelbagai maklumat tentang halaman semasa, seperti masa pelaksanaan, pertanyaan SQL, pengecualian, amaran, log dan banyak lagi.

Untuk mendayakan bar nyahpepijat, anda perlu menetapkan pembolehubah persekitaran APP_DEBUG kepada benar dan membuka aplikasi Laravel dalam penyemak imbas. Setelah dihidupkan, bar nyahpepijat akan sentiasa muncul di bahagian atas halaman sehingga anda mematikannya atau menetapkan pembolehubah persekitaran kepada palsu.

Ringkasan

Laravel menyediakan banyak alatan dan teknik berguna untuk menangkap dan memaparkan mesej ralat. Menggunakan kaedah ini, pembangun boleh menyahpepijat pelbagai isu dengan mudah dalam aplikasi Laravel seperti ralat masa jalan, isu sambungan pangkalan data, dsb. Mengetahui cara memaparkan mesej ralat dalam Laravel adalah salah satu kemahiran penting untuk menjadi pembangun web yang baik.

Atas ialah kandungan terperinci laravel menunjukkan mesej ralat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan