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

PHP 8 - การใช้ ValueError ตรวจสอบว่าค่าที่พบเป็นประเภทที่ถูกต้องหรือไม่

PHP 8 ใช้ข้อยกเว้นในตัวใหม่คือ ValueError PHP จะโยนข้อยกเว้นนี้เมื่อเราส่งค่าไปยังฟังก์ชันซึ่งมีประเภทที่ถูกต้องแต่ไม่สามารถใช้สำหรับการดำเนินการได้ ใน PHP เวอร์ชันก่อนหน้า เราจะได้รับ Warning error ในกรณีเช่นนี้ แต่ PHP 8 จะแสดง ValueError

ตัวอย่าง: ValueError ใน PHP 8

<?php declare(strict_types=1); array_rand([1,2,3], 0); json_decode('{}', true, -1); ?>

ผลลัพธ์

Fatal error: Uncaught ValueError: array_rand(): Argument #1 ($array) cannot be empty

ตัวอย่าง

<?php $x = strpos("h", "hello", 16); var_dump($x); ?>

ผลลัพธ์

bool(false)

ตัวอย่าง: ValueError ใน PHP 8

<?php $x = strpos("h", "hello", 16); var_dump($x); ?>

ผลลัพธ์

Fatal error: Uncaught ValueError: array_rand(): Argument #1 ($array) cannot be empty