PHP exit()而不是break-inside开关
在交换机中,我在任何情况下都会重定向用户,删除PHP exit()而不是break-inside开关,php,switch-statement,Php,Switch Statement,在交换机中,我在任何情况下都会重定向用户,删除break是否安全在这种情况下 switch ($action) { case "ActionA": header('Location: PageA.php'); exit(); break; case "ActionB": header('Location: PageB.php'); exit(); break; } 编辑:我之所以
break是否安全代码>在这种情况下
switch ($action)
{
case "ActionA":
header('Location: PageA.php');
exit();
break;
case "ActionB":
header('Location: PageB.php');
exit();
break;
}
编辑:我之所以要小心,是因为一个案例可以修改用户档案,另一个案例可以删除它。因为exit()代码>终止程序执行。因此,在exit()之后不会执行任何操作代码>.Sobreak代码>现在在这里是不必要的
您可以像下面这样直接访问:-
switch ($action)
{
case "ActionA":
header('Location: PageA.php');
exit();
case "ActionB":
header('Location: PageB.php');
exit();
}
是的,它不需要并且可以安全地删除-您可以终止脚本,因此在退出后将不再执行任何操作
将终止程序执行。因此中断代码>现在不需要了。如果你每次都要退出,为什么不把exit()
放在开关之后,而不是每次都重复它呢?@Qirel虽然在这种情况下这无关紧要,但为了纠正起见,我必须声明:退出后不一定会执行任何操作。A、an和all objects'将在exit()
之后执行,我建议在每种情况下总是将break
或exit
,否则可能会发生奇怪的错误。(参见开关文档:关于省略中断的部分)。如果你故意忽略了
中断
,重新思考你的策略,那么很容易意外地改变代码/含义/顺序,奇怪的事情就会发生。