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