我想知道如果遇到某种情况,如何跳转到switch语句之外,因为代码必须重试它刚刚完成的操作。这是我的代码示例;
$result = $this->check($user, $password);
switch($result){
case 'invalid-email-password':
//Do stuff
break;
case 'error':
//Do stuff
//Jump back to $result = $this->check to try again
break;
代码只应在“错误”错误后继续执行。 case不再是$this->check()
函数的结果。
答案 0 :(得分:0)
一般来说,如果你想编写“重试直到它工作”的事情,请考虑这个:
while(true) {
doSomething();
if( $it_worked) break;
}
请注意,由于您使用switch
语句,因此您需要使用break 2;
成功结果退出switch
和while
为了防止无限循环,你可以让一个$attempts
计数器倒计时,如果你没有尝试就会手动打破循环。