Ant*_*ony 2 php logic conditional boolean
我知道这是基本的布尔逻辑,但我卡住了:
我循环遍历数据库结果,每个我需要检查以下条件:
if($old_value != $new_value)
Run Code Online (Sandbox Code Playgroud)
如果以上情况属实,则操作为:
$old_value = $new_value;
Run Code Online (Sandbox Code Playgroud)
但是存在次要条件.如果行的类型为"date",我还需要检查它$new_value是否为空,但操作仍然相同.现在,我这样做:
if($old_value != $new_value) {
if($type != date) {
$old_value = $new_value;
} elseif(!empty($new_value)) {
$old_value = $new_value;
}
Run Code Online (Sandbox Code Playgroud)
我已经过度简化了上面的内容,但实际上单线动作实际上是几行,我知道我不需要根据次要条件重复这些行.
但我对于将内在条件与外在条件结合起来的正确方法感到茫然.如果我这样做:
if(($old_value != $new_value) && ($type == 'date' && !empty($new_value))
Run Code Online (Sandbox Code Playgroud)
然后它返回true的唯一时间是行的类型为date.
尝试:
if(($old_value != $new_value) && ($type != 'date' || !empty($new_value))
Run Code Online (Sandbox Code Playgroud)
应该这样做.如果您需要帮助了解原因,请告诉我.