【发布时间】:2019-02-28 05:55:38
【问题描述】:
用一个简单的函数如:
function hello( $var )
{
try
{
// do something with $var which may or may not throw an exception
return $var;
}
finally
{
return $var;
}
}
如果转换为:在逻辑或处理方面有什么不同:
function hello( $var )
{
try
{
// do something with $var which may or may not throw an exception
return $var;
}
catch( Exception $e )
{
return $var;
}
}
请忽略$e 什么都没做的事实,并忽略示例函数的简单性/无用性;这只是一个MCVE。
这种转换的目的是使源代码在 PHP 5.3 中 100% 兼容,因为 finally{} 是在 5.5 中引入的,我希望在保持 100% 逻辑的同时进行必要的最小更改。
我之所以问,是因为我个人对使用 try/catch/finally 块的经验很少,而且我不知道所有的陷阱。
有没有更好的方法来实现 PHP 5.3 的兼容性?
【问题讨论】:
标签: php try-catch php-5.3 php-5.5