PHP 8 एक नया अंतर्निहित अपवाद ValueError उपयोग करता है। PHP यह अपवाद तब फेंकता है जब हम किसी फ़ंक्शन को एक मान पास करते हैं, जिसका प्रकार वैध होता है लेकिन ऑपरेशन के लिए उपयोग नहीं किया जा सकता। PHP के पुराने संस्करणों में, हमें ऐसे मामलों में चेतावनी त्रुटि मिलती थी, लेकिन 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