PHP 8 – 如何使用 ValueError 檢查遇到的值是否為正確型別?
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
廣告