我正在嘗試創建一個函式,該函式在呼叫時傳遞一個可呼叫物件和一個例外“型別”,可以是 ::class 字串或類似的東西。這個想法是該函式將在 try/catch 塊內呼叫回呼。
示例功能:
public static function try(callable $callback, string $exceptionClass) : object | null {
try {
...
$callback();
...
catch($exceptionClass $e) {
...
}
}
我找到了這個答案。但我不確定如何獲得型別。
uj5u.com熱心網友回復:
您不能像這樣在 catch 中使用變數:
try {
$callback();
} catch ($exceptionClass $e) {
}
你必須做這樣的事情,在那里你捕獲所有東西,然后有條件地檢查例外型別:
try {
$callback();
} catch (\Throwable $e) {
if ($e instanceof $exceptionClass) {
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/426250.html
