Pengecualian PHP 7
Pengecualian PHP 7 digunakan untuk keserasian ke belakang dan peningkatan fungsi assert() lama. Ia membolehkan penegasan kos sifar dalam persekitaran pengeluaran dan menyediakan keupayaan untuk membuang pengecualian dan ralat tersuai.
Versi lama API akan terus dikekalkan untuk tujuan keserasian assert() kini merupakan binaan bahasa yang membenarkan hujah pertama menjadi ungkapan, bukan sekadar rentetan untuk dinilai atau boolean. untuk diuji.
tegaskan() konfigurasi
parameter
- penegasan
Penegasan. Dalam PHP 5, rentetan untuk pelaksanaan atau boolean untuk ujian. Dalam PHP 7, ini boleh menjadi ungkapan yang mengembalikan sebarang nilai, dan hasilnya akan digunakan untuk menunjukkan sama ada pernyataan itu berjaya.
- penerangan
Jika
assertion
gagal, penerangan pilihan akan disertakan dalam mesej kegagalan.- exception
Dalam PHP 7, parameter kedua boleh menjadi objek Throwable dan bukannya String aksara yang akan dilemparkan jika penegasan gagal dan menegaskan.pengecualian didayakan.
Instance
Tetapkan zend.assertions kepada 0:
Instance
<?php ini_set('zend.assertions', 0); assert(true == false); echo 'Hi!'; ?>
Program di atas ialah dilaksanakan Hasil output ialah:
Hi!
Tetapkan zend.assertions kepada 1 dan assert.exception kepada 1:
Instance
<?php ini_set('zend.assertions', 1); ini_set('assert.exception', 1); assert(true == false); echo 'Hi!'; ?>
Perlaksanaan program di atas output Hasilnya ialah:
Fatal error: Uncaught AssertionError: assert(true == false) in -:2 Stack trace: #0 -(2): assert(false, 'assert(true == ...') #1 {main} thrown in - on line 2