在我看來,這個例外對於驗證參數來說非常寶貴——例如,提供類似 C 語言的嚴格類型。
<?php
function tripleInteger($int)
{
if( !is_int($int) )
throw new InvalidArgumentException('tripleInteger 函式只接受整數。輸入值為:'.$int);
return $int * 3;
}
$x = tripleInteger(4); //$x == 12
$x = tripleInteger(2.5); //會拋出例外,因為 2.5 是浮點數
$x = tripleInteger('foo'); //會拋出例外,因為 'foo' 是字串
$x = tripleInteger('4'); //會拋出例外,因為 '4' 也是字串
?>