所以我有这样的代码:
for($x=1;$x<=3;$x++)
{
try
{
$c = new client($user_id, $ident);
log("Client initialized successfully...");
break;
}
catch (Exception $e)
{
log("Error in attempt($x)to init client");
}
}
我的问题是,是否有可能在行log("Client initialized successfully...");
之后抛出异常?因为如果是,那么这意味着日志将同时具有初始化过程的成功和错误消息。从技术上讲,异常只应在新客户端对象初始化时才会出现,但我不确定......
答案 0 :(得分:1)
嗯,是的,如果函数日志抛出异常,也可以,如果我是你,我会重命名函数名,因为已经有一个函数日志:
答案 1 :(得分:0)
只有日志函数抛出异常才有可能。
或者,您可以将$success
变量初始化为true
。您在false
中将其设置为catch
。然后在整个try / catch块之后检查它。
答案 2 :(得分:0)
异常只能在行中抛出:
$c = new client($user_id, $ident);
或
log("Client initialized successfully...");
(我们不知道日志的功能)。
很奇怪,你尝试循环初始化对象3次 - 你在这里期待很多错误吗?