Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Membuat Pengecualian Lemparan PDO secara Lalai dalam PHP?

Bagaimana untuk Membuat Pengecualian Lemparan PDO secara Lalai dalam PHP?

Barbara Streisand
Barbara Streisandasal
2024-10-28 18:12:29426semak imbas

How to Make PDO Throw Exceptions by Default in PHP?

Cara Mengkonfigurasi PDO untuk Membuang Pengecualian secara Lalai

PDO menyediakan mekanisme yang mudah untuk interaksi pangkalan data dalam PHP. Secara lalai, ia beroperasi dalam "mod senyap", di mana ralat tidak dibangkitkan sebagai pengecualian. Bagi pembangun yang lebih suka mengendalikan ralat secara eksplisit, adalah wajar untuk mengubah suai tingkah laku ini.

Penyelesaian:

Untuk menetapkan PDO untuk membuang pengecualian secara lalai, ubah suai hujah pembina apabila mencipta objek PDO baharu:

<code class="php">$pdo = new PDO('mysql:host=localhost;dbname=someDatabase', 'username', 'password', [
  PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);</code>

Coretan kod ini menambah panggilan setAttribute kepada pembina, serta-merta menetapkan mod ralat kepada "mod pengecualian."

Pendekatan Alternatif:

Walaupun tiada konfigurasi langsung dalam php.ini atau fail konfigurasi lain untuk mencapai tingkah laku ini, terdapat pendekatan alternatif:

  • Buat kelas pembalut PDO: Tentukan kelas yang membalut PDO dengan mod ralat pilihan yang ditetapkan sebagai hujah pembina lalai.
  • Instance PDO Global: Cipta tika PDO global dengan mod ralat yang diingini dan gunakannya sepanjang aplikasi anda.
  • Utiliti pengendalian ralat: Bangunkan fungsi atau utiliti yang menetapkan mod ralat untuk mana-mana tika PDO yang dibuat dalam skopnya.

Atas ialah kandungan terperinci Bagaimana untuk Membuat Pengecualian Lemparan PDO secara Lalai dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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