php中if..else staterment中的多个逻辑运算符

时间:2015-05-09 08:32:10

标签: php if-statement logical-operators

从HTML表单提交firstname和lastname。

在PHP中我想检查它们两个必须至少3个字符长,最多18个字符。 我如何在if else声明

中查看它

示例代码如下

$f = $_POST['firstname'];
$l = $_POST['lastname'];
if((strlen($f) < 3 || strlen($f) > 16) && (strlen($l) < 3 || strlen($l) > 16))
{
    echo "Firstname and lastname must be between 3 and 16 characters";
    exit();
}

我的工作做错了......

感谢您的帮助,希望您能理解我的问题

2 个答案:

答案 0 :(得分:4)

if((strlen($f) < 3 || strlen($f) > 16) || (strlen($l) < 3 || strlen($l) > 16))

将中间的&&替换为||

当你们两个都没有效时,你所做的只会抛出错误。 当其中一个是你时,你想扔它。

答案 1 :(得分:0)

试试这个..

if((strlen($f) <= 3 && strlen($f) >= 18 ) && (strlen($l) <= 3 && strlen($l) >= 18 ))
{
echo "Firstname and lastname must be between 3 and 16 characters";
}
else
{
//query here..
}