PHP 8 একটি নতুন বিল্ট-ইন এক্সসেপশন ValueError ব্যবহার করে। PHP এই এক্সসেপশন থ্রো করে যখন আমরা একটি ফাংশনে একটি মান পাস করি, যার একটি বৈধ টাইপ আছে কিন্তু অপারেশনের জন্য ব্যবহার করা যাবে না। PHP-এর পুরানো সংস্করণে, আমরা এমন কেসে একটি Warning error পেতাম, কিন্তু PHP 8 ValueError দেখাবে।
উদাহরণ: PHP 8-এ ValueError
<?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)
উদাহরণ: PHP 8-এ ValueError
<?php $x = strpos("h", "hello", 16); var_dump($x); ?>আউটপুট
Fatal error: Uncaught ValueError: array_rand(): Argument #1 ($array) cannot be empty