Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP AssertionError

บทนำ

คลาส AssertionError เป็น subclass ของคลาส Error ข้อผิดพลาดประเภทนี้ถูกโยนเมื่อ assert() คืนค่า FALSE

assert() ตรวจสอบว่า assertion ที่ให้มาจริงหรือเท็จ และโยน AssertionError หากเป็นเท็จ ฟังก์ชัน assert() ถูกกำหนดดังนี้

ไวยากรณ์

for PHP 5 and PHP 7 assert ( mixed $assertion [, string $description ] ) : bool PHP 7 only assert ( mixed $assertion [, Throwable $exception ] ) : bool

Parameters

Sr.NoParameter & Description
1assertion
string หรือ boolean expression
2description
failure message
3exception (for PHP 7 only)
throwable object

ตั้งแต่ PHP 7.0 assert() เป็น language construct ไม่ใช่ฟังก์ชัน พารามิเตอร์ assertion ตอนนี้สามารถเป็น expression ได้ และพารามิเตอร์ที่สองเป็น exception หรือ description ตั้งแต่ PHP 7.2 เป็นต้นมา string description จะปล่อยข้อความ E_DEPRECATED AssertionError ที่โยนโดย assert() จะส่งไป catch block ก็ต่อเมื่อ assert.exception=on เปิดใช้งานใน php.ini

AssertionError Example

ในตัวอย่างนี้ เรา assert ว่าเงื่อนไขเป็นจริง try block ทำงานปกติ หากเป็นเท็จ ข้อความ AssertionError จะแสดงจาก catch block

ตัวอย่าง

<?php $a=10; $b=20; try { if (assert($a == $b, "assert($a == $b) failed.")) { echo("assert($a == $b) was successful."); } } catch (AssertionError $e) { echo $e->getMessage(); } ?>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

assert(10 == 20) failed.