无法获得||从事这种比较操作,我一生都无法理解为什么。
这很好:
$validation = ($_POST["txtValidcode"]);
if($validation!=='ABC') { $strError .= 'Wrong';}
但这根本不起作用(它将两个条目都视为错误):
$validation = ($_POST["txtValidcode"]);
if($validation!=='ABC' || 'abc') { $strError .= 'Wrong';}
我尝试过:或!=,if($ validation!=='ABC'|| $ validation!=='abc'),可能还有其他我想到的选择。我在这里做什么错了?
答案 0 :(得分:5)
在这种情况下,我建议使用strtolower()
或strtoupper()
函数,例如:
$validation = trim($_POST["txtValidcode"]);
if(strtolower($validation) != 'abc') {
$strError .= 'Wrong';
}
或in_array()
:
$validation = trim($_POST["txtValidcode"]);
if(!in_array($validation, ['ABC', 'abc'])) {
$strError .= 'Wrong';
}
答案 1 :(得分:0)
您可以尝试通过修饰并将字符串设置为小写。
$strError = '';
$validation = isset($_POST["txtValidcode"]) ? trim(strtolower($_POST["txtValidcode"])) : null;
if($validation !== 'abc') {
$strError .= 'Wrong';
}