【发布时间】:2019-01-31 14:16:12
【问题描述】:
我想知道为什么会这样。我有这样的代码(我把 return 只是为了调试):
public function foo($var) {
do_something_here;
return 'stop';
if ($var > 0)
{ return 'true'; }
return 'false';
}
我得到的是我的函数并没有像预期的那样停在return 'stop' 行(它仍然继续返回'true'(如果它为假,则返回'false')。这是否意味着return 命令必须是放在函数的最后一行(或在条件语句中)?
【问题讨论】:
-
不,它会返回并且不执行其余代码,3v4l.org/ZObXM
-
但是在 Laravel 函数中我创建了类似的东西,然后在 jQuery 中接收返回值。而且 jQuery 仍然在真假之间读取,没有停止。听起来怪怪的。 @LawrenceCherone
-
你的 do something here 可能包含一个 if 语句,它会阻止函数在
return 'stop'处停止; -
我清理了我的缓存,现在它按预期返回停止。缓存会影响 PHP 脚本吗? @小学
-
是的,这是可能的。一些 PHP 应用程序使用缓存来避免重新加载多次相同的文件。一些函数也可以被缓存,因此任何修改都将在缓存清理后反映...
标签: php return return-value return-type