PHP switch 语句不使用 return 执行值
PHP switch statement doesn't executes values using return
在使用return时,PHP switch语句是否可能没有执行switch期望的结果?
这两种说法有什么区别?
$foo = '2';
switch ($foo) {
case 1:
echo 1;
break;
case 2:
echo 2;
break;
}
执行 2
对比
$foo = '2';
switch ($foo) {
case 1:
return 1;
break;
case 2:
return 2;
break;
}
似乎不起作用。
有什么办法让它起作用吗?
return 与 functions.Second 一起工作,如果它在函数
内,将执行
echo输出你传递的值(1, 2)
return 将值传递给调用模块。
第二个代码块确实有效,但您看不到任何视觉输出。
下面是如何在函数中使用 case 语句 -
function myFunction($foo) {
switch ($foo) {
case 1:
return 1;
case 2:
return 2;
default:
return 'no matching values were sent to the function';
}
}
echo myFunction(2); // will echo '2'
你应该养成在你的开关中使用默认情况的习惯,即使你只是用它们来记录错误到日志或类似的东西。
在使用return时,PHP switch语句是否可能没有执行switch期望的结果?
这两种说法有什么区别?
$foo = '2';
switch ($foo) {
case 1:
echo 1;
break;
case 2:
echo 2;
break;
}
执行 2
对比
$foo = '2';
switch ($foo) {
case 1:
return 1;
break;
case 2:
return 2;
break;
}
似乎不起作用。
有什么办法让它起作用吗?
return 与 functions.Second 一起工作,如果它在函数
内,将执行echo输出你传递的值(1, 2)
return 将值传递给调用模块。
第二个代码块确实有效,但您看不到任何视觉输出。
下面是如何在函数中使用 case 语句 -
function myFunction($foo) {
switch ($foo) {
case 1:
return 1;
case 2:
return 2;
default:
return 'no matching values were sent to the function';
}
}
echo myFunction(2); // will echo '2'
你应该养成在你的开关中使用默认情况的习惯,即使你只是用它们来记录错误到日志或类似的东西。