Catatan. Pengecualian hanya boleh digunakan dengan kondisi kesalahan, dan tidak boleh digunakan untuk melompat ke tempat lain dalam kode pada titik tertentu Show
Penggunaan kebijakan PengecualianKetika pengecualian dilemparkan, kode berikut tidak akan dieksekusi, dan PHP akan mencoba menemukan blok "catch" yang cocok. Jika pengecualian tidak tertangkap, kesalahan fatal akan dikeluarkan dengan pesan "Pengecualian Tidak Tertangkap" . Mari kita coba membuang pengecualian tanpa menangkapnya // buat fungsi dengan pengecualian Kode di atas akan mendapatkan error seperti ini Kesalahan fatal. Pengecualian yang tidak tertangkap 'Pengecualian' Cobalah, lempar dan tangkapUntuk menghindari error dari contoh di atas, kita perlu membuat kode yang tepat untuk menangani exception tersebut Kode pengecualian yang tepat harus disertakan
Mari coba memicu pengecualian dengan kode yang valid // buat fungsi dengan pengecualian Kode di atas akan mendapatkan error seperti ini Pesan. Nilai harus 1 atau lebih rendah Sebuah contoh menjelaskanKode di atas melempar pengecualian dan menangkapnya
Namun, salah satu cara untuk menyiasati aturan "setiap lemparan harus memiliki tangkapan" adalah dengan menyetel penangan pengecualian tingkat atas untuk ditangani kesalahan yang lolos. Membuat Kelas Pengecualian KhususUntuk membuat penangan pengecualian khusus Anda harus membuat kelas khusus dengan fungsi yang dapat dipanggil saat terjadi pengecualian di PHP. kelas harus merupakan perpanjangan dari kelas pengecualian Kelas pengecualian khusus mewarisi properti dari kelas pengecualian PHP dan Anda dapat menambahkan fungsi khusus untuknya Mari buat kelas pengecualian kelas customException memperluas Pengecualian { Kelas baru adalah salinan dari kelas pengecualian lama dengan penambahan fungsi errorMessage() . Karena merupakan salinan dari kelas lama, dan mewarisi properti dan metode dari kelas lama, kita dapat menggunakan metode kelas pengecualian seperti getLine() dan getFile() dan getMessage() . Sebuah contoh menjelaskanKode di atas melempar pengecualian dan menangkapnya dengan kelas pengecualian khusus
beberapa pengecualianSkrip dapat menggunakan beberapa pengecualian untuk memeriksa beberapa kondisi Dimungkinkan untuk menggunakan banyak blok if. lain, beralih, atau membuat beberapa pengecualian. Pengecualian ini dapat menggunakan kelas pengecualian yang berbeda dan mengembalikan pesan kesalahan yang berbeda kelas customException memperluas Pengecualian { Sebuah contoh menjelaskanKode di atas menguji dua kondisi dan melontarkan pengecualian jika salah satu kondisi tidak terpenuhi
Jika pengecualian yang dilontarkan berasal dari kelas customException dan tidak ada tangkapan customException, hanya tangkapan pengecualian kebijakan, pengecualian akan ditangani di sana Mengembalikan PengecualianKadang-kadang, ketika sebuah pengecualian dilemparkan, Anda mungkin ingin menanganinya secara berbeda dari cara standar. Dimungkinkan untuk membuang pengecualian untuk kedua kalinya dalam blok "catch" . Skrip harus menyembunyikan kesalahan sistem dari pengguna. Kesalahan sistem mungkin penting bagi pembuat kode, tetapi tidak menarik bagi pengguna. Untuk mempermudah pengguna, Anda dapat kembali melempar pengecualian dengan pesan ramah pengguna Apa fungsi tangkapannya?catch memungkinkan untuk menangani kesalahan runtime . Ini benar-benar memungkinkan untuk "mencoba" menjalankan kode dan "menangkap" kesalahan yang mungkin terjadi di dalamnya.
Apa fungsi mencoba dan menangkap?Tujuan dari blok try-catch adalah untuk menangkap dan menangani pengecualian yang dihasilkan oleh kode yang berfungsi .
Kapan try catch digunakan?Untuk mengatasi error di Java , sebuah pernyataan yang disebut try digunakan. menangkap. Pernyataan tersebut digunakan untuk memblokir eksekusi yang menampilkan error dan dapat membuat program terus berjalan tanpa dihentikan secara langsung.
Apa pengecualian dalam PHP?Exception secara bahasa berarti pengecualian. Sedangkan dalam istilah PHP adalah perubahan alur program dari kondisi normal ke kondisi tertentu (atau pengecualian tertentu) jika terjadi error ( pengecualian ). |