我有一个for循环,但是如果满足条件,我想跳过一些循环。
这样可以正常工作,并且如果$option_nm
不是“字体”,则会继续循环。
if($option_nm != "Fonts"){
continue;
}
但是,这不起作用,并且会跳过所有内容。
if($option_nm != "Fonts" || $option_nm != "Style" || $option_nm != "Thread" || $option_nm != "Textbox"){
continue;
}
我还尝试将||
更改为Or
,这也是同样的事情。
我做错了什么?
答案 0 :(得分:2)
您混淆了OR
声明。
您的代码应该是:
if($option_nm != "Fonts" && $option_nm != "Style" && $option_nm != "Thread" && $option_nm != "Textbox"){
continue;
}
答案 1 :(得分:1)
您的if条件始终返回true并且循环继续,因为您使用{if}条件or
或||
。
试试这个。
if($option_nm != "Fonts" && $option_nm != "Style" && $option_nm != "Thread" && $option_nm != "Textbox"){
continue;
}
答案 2 :(得分:1)
即使您的帖子超过一年,我也会提供另一种解决方案。
您可以利用php中的in_array
功能,并在语句周围执行if if语句。
$elements = array("Fonts", "Style", "Thread", "Textbox")
if (!in_array($option_nm, $elements)) { continue;}
这使得未来的维护变得简单易读。