我有问题。这变成了现实。
$mountain_pump = "n";
if ($mountain_pump != "n" || $mountain != "n" || $mountain_pump != "" || $mountain != "") {
if ($rot == "Ja"){
$vibration = 12000;
$vibration_string = number_format($vibration , 0, ',', '.') . " kr (med ROT-avdrag)";
} else {
$vibration = 15000;
$vibration_string = number_format($vibration , 0, ',', '.') . " kr (utan ROT-avdrag)";
};
$summary = $summary + $vibration;
$printstring = $printstring . "<tr><td>Vibrationsbesiktning:</td><td>" . $vibration_string . "</td></tr>";
}
如果我删除了这个......
|| $mountain_pump != "" || $mountain != ""
...脚本按预期工作。我需要有上述&#34;或&#34;&#34;因为价值可以是&#34;&#34;有时。
任何人都知道为什么脚本会运行,即使值是&#34; n&#34; $ mountain_pump,如本例所示?
答案 0 :(得分:0)
当然,上述条件评估为真:
$mountain_pump = 'n';
if ($mountain_pump != 'n' || $mountain_pump != '')
如果$mountain_pump
n
或''
,则条件只能为false。如果变量是空字符串或n,则条件为真。我不知道问题是什么,只需将||
替换为&&
并在那里(条件应排除$mountain_pump
所有情况n
或''
,因此您要排除条件1 和 条件2)。