次のコードでユーザー入力をフォーマットしようとしています:
$userInput="blalalbla";//assume the user is inputing wrong data, they are supposed to input it like "12:30"
try{
$timeStr=explode(":",$userInput);
$time=(new Datetime())->setTime($timeStr[0],$timeStr[1]);
}catch(ErrorException $e){
}
ただし、入力が正しい形式でない場合、laravel4 は常に ErrorException を発生させ、それをキャッチする方法がありません。ユーザー入力はさまざまな方法で間違っている可能性があるため、これが検証を処理する最も洗練された方法であると考えました。ばかげているように聞こえますが、ErrorExceptions はキャッチできないようです。他にどのようなオプションがありますか?