此代码适用于我想要的内容,但我想知道在if语句的大括号内是否可以做任何事情。有没有更好的方法来写这个?
if(empty($data) || $data == "unanswered")) {
//do nothing
} else {
//display data
echo $data;
}
答案 0 :(得分:16)
你可以改为否定:
if(!empty($data) && $data != 'unanswered')
echo $data;
答案 1 :(得分:2)
这在PHP和大多数其他语言中都是合法的,但您可以使用布尔律法DeMorgan的法律来缩短if语句:
if(!empty($data) && $data != "unanswered"){
echo $data;
}
德摩根定律只是否定了布尔表达式。
答案 2 :(得分:1)
有空花括号是有效的。但是,从软件工程的角度来看,它的设计非常糟糕。你最好使用DeMorgan的法律(你可以在之前的评论中看到这一点)。最好开始学习如何编写其他开发人员可以理解的高质量代码。
答案 3 :(得分:1)
这是一个常见问题。空括号非常难看,但是允许。要创建有效且可读的子句,请使用!(子句)。用法:
if( ! ( empty($data) || $data == "unanswered" ) ) {
// do something
}
答案 4 :(得分:0)
您应该尝试撤消条件,以便您的语句最终出现在第一组花括号中。使用第一组花括号中的语句,可以省略第二组。
答案 5 :(得分:0)
您的问题的答案是肯定的,您可以这样做。我们有时候会想到我们可能会想出一些东西放在那里,但只是在后期才会这样做。
许多人建议你可以否定这个条件,但这一切都取决于你如何看待未来的代码。