使用退货时是否需要切换开关?
我想知道在使用“return”时是否需要在“switch”function中使用“break”。
function test($string) { switch($string) { case 'test1': return 'Test 1: ' . $string; case 'test2': return 'Test 2: ' . $string; } }
我已经尝试过了,没有“rest”就可以正常工作。 但是我需要知道这是否安全。 谢谢。
是的,你可以使用return
而不是break
…
break
是可选的,用于防止所有其他case
语句“落入”。 所以return
可以以类似的方式使用,因为return
结束了函数的执行。
另外,如果你所有的case
都是这样的:
case 'foo': $result = find_result(...); break;
并在switch
语句之后,您只需return $result
,使用return find_result(...);
在每种case
都会使你的代码更具可读性。
最后不要忘记添加default
情况。 如果你认为你的代码永远不会达到default
情况,那么你可以使用assert
函数,因为你永远不能确定。
你不需要rest,返回停止执行该function。
(供参考: http : //php.net/manual/en/function.return.php说:
如果从函数内部调用,则return()语句会立即结束当前函数的执行
)
没有不必要的,因为当关键字return被调用时,它将指示开关/情况被调用的特定function已经结束。
不,你不需要在switch case
语句中break
。 break
实际上是可选的,但谨慎使用。
你不需要它,但我强烈build议在任何情况下使用它作为良好的做法。
Break只是一个警告声明,用于限制开关结构的控制进入另一个案例…例如,如果您有三个case语句,value是第一个case,而您使用的case没有任何break结构,那么所有以下所有的情况将被执行,尽pipe条件仅仅满足第一种情况…返回可以执行asme函数,所以如果你使用return来代替break,那么返回将会把控制从switch case语句中移开这是当时的需要……希望它有帮助….
返回给控制回到调用方法,其中断开跳转到切换块后的第一条指令。