我对php中的switch不是很熟悉,但是我听说如果你的代码有很多elseif,最好用switch来代替。我试图将下面的代码更改为 switch,但由于我在每个 elseif 处检查两个或三个值,因此使用 elseif 而不是 switch 对我来说似乎更合乎逻辑(也许我错了)。
所以我的问题是,你对下面的代码有什么建议?Elseif 还是 switch?
如果我想把代码改成switch,你能给我一些提示吗?
非常感谢您!
(顺便说一句,block_check 和 report_check 是复选框,reported_msg 是文本)
public function block_user(){
if(isset($_POST['submitted'])){
$block_check = $_POST['block_check'];
$report_check = $_POST['report_check'];
$reported_msg = $_POST['reported_msg']);
if((!($block_check)) && (!($report_check))){
echo "dont send, both not checked";
}elseif(($report_check) && ($reported_msg == '')){
echo "dont send, msg box is empty";
}elseif((!($report_check)) && ($reported_msg != '')){
echo "dont send, report_check is not checked";
}elseif(($block_check) && (!($report_check)) && ($reported_msg == '')){
echo "just process block";
}elseif((!($block_check)) && ($report_check) && ($reported_msg != '')){
echo "just process report";
}elseif(($block_check) && ($report_check) && ($reported_msg != '')){
echo "process both block and report";
}
}
}