Php “如何继续”;For Loop";如果函数退出
如果调用函数executeexit(),我想继续我的for循环语句 注: 当$i=2时,不应处理剩余的代码行;因此,我需要的主要帮助是退出函数,而不是退出循环 此外,我有很多条件,所以我不能使用,如果其他 我已经尝试了返回语句,但带有返回;语句函数执行剩余的代码行,这是主要问题!。 任何帮助都将不胜感激 比如说Php “如何继续”;For Loop";如果函数退出,php,codeigniter,return,exit,Php,Codeigniter,Return,Exit,如果调用函数executeexit(),我想继续我的for循环语句 注: 当$i=2时,不应处理剩余的代码行;因此,我需要的主要帮助是退出函数,而不是退出循环 此外,我有很多条件,所以我不能使用,如果其他 我已经尝试了返回语句,但带有返回;语句函数执行剩余的代码行,这是主要问题!。 任何帮助都将不胜感激 比如说 for($i=0;$i<=5;$i++){ $this->calculate($i); } function calculate($counter){ if(
for($i=0;$i<=5;$i++){
$this->calculate($i);
}
function calculate($counter){
if($counter==2){
exit(0);
}
echo "My remaining code lines";
}
for($i=0;$i计算($i);
}
函数计算($counter){
如果($counter==2){
出口(0);
}
回显“我剩余的代码行”;
}
更新答案
在您的评论之后。我们必须让for循环知道我们不想继续。由于逻辑是分离的,我们可以执行以下操作:
for ($i = 0; $i <= 5; $i++) {
if ($this->calculate($i) == false) {
break;
}
}
function calculate($counter) {
if ($counter == 2) {
return false;
}
echo "My remaining code lines";
return true;
}
return
使用的语句
for(condition){
return();
}
不要使用
exit
而是使用return
,因为exit
终止执行,而return
只存在当前函数
而不是if-else
您可以使用,如下所示:
for($i=0;$i<=5;$i++){
if(!$this->calculate($i))
{
continue;
}
}
function calculate($counter){
switch($counter){
case 2:
return false;
default:
echo "My remaining code lines";
break;
}
}
用于($i=0;$i计算($i))
{
持续
}
}
函数计算($counter){
交换机($计数器){
案例2:
返回false;
违约:
回显“我剩余的代码行”;
打破
}
}
Edit:如果方法calculate()
return
sfalse
只需使用a,我已更新了答案,将循环移动到下一次迭代。它将返回给调用方,因此您可以继续执行
for($i=0;$i<=5;$i++){
$this->calculate($i);
}
function calculate($counter){
if($counter==2){
return;
}
echo "My remaining code lines";
}
for($i=0;$i计算($i);
}
函数计算($counter){
如果($counter==2){
回来
}
回显“我剩余的代码行”;
}
//使用return()函数..退出()停止执行
function calculate($counter){
if($counter==2){
return;
}
echo "My remaining code lines";
}
?>
使用
return
退出函数调用,而不是整个脚本。Hi@MattClark,使用return函数执行剩余的代码行。这是主要问题。您想退出。return将我们带回循环,允许我们继续执行,但您说“您不想执行剩余的代码行”,在你的问题中,你说你想“退出我的函数,但不退出循环。”那是哪一个呢?Break将我们永远从foreach中删除,continue允许我们继续使用foreach,但要遍历其余的行……是的@Alex,如果$counter=2,我想中断函数执行,因此,根据我的实践,我们不能在循环外使用Break和continue语句。我们知道exit()函数终止所有脚本,return语句执行“剩余的代码行”。那么我应该怎么做才能满足我的要求呢???读了我更新的答案,我甚至附上了一个运行代码示例(一个带break,一个带continue).我们只是让for函数知道如何通过返回false并查找false返回来中断;与仅返回完全不同开关盒unnecessary@Alex正如OP所说,他有很多条件,只有一个输入变量,这里的开关可能更为优化。事实上,他错过了这一部分!亲爱的@mega6382,上面说的是for循环变量值可以是动态的。我们不知道值的范围。所以我们不能使用用例。Hi@Alex,使用return;语句,函数执行剩余的代码行。这是主要问题。更新了,这有帮助吗?亲爱的@Alex,使用return;语句,函数执行剩余的代码行不是像这样使用时。
function calculate($counter){
if($counter==2){
return;
}
echo "My remaining code lines";
}
?>