PHP:静态属性不接受赋值
我开始对我遇到的问题感到沮丧。我使用if语句为一个名为error的静态属性赋值。有趣的是,只有第二个if实际赋值,而第一个if没有赋值PHP:静态属性不接受赋值,php,static,variable-assignment,Php,Static,Variable Assignment,我开始对我遇到的问题感到沮丧。我使用if语句为一个名为error的静态属性赋值。有趣的是,只有第二个if实际赋值,而第一个if没有赋值 if (mb_strlen($password) > 10 || mb_strlen($email) > 35) { // 1st Error: self::$error = "PASS_EMAIL_TOO_LONG"; die(self::$error); return false; } if (mb_strlen(
if (mb_strlen($password) > 10 || mb_strlen($email) > 35)
{
// 1st Error:
self::$error = "PASS_EMAIL_TOO_LONG";
die(self::$error);
return false;
}
if (mb_strlen($password) < 8)
{
self::$error = "PASS_TOO_SHORT";
die(self::$error);
return false;
}
if(mb|u strlen($password)>10 | mb|u strlen($email)>35)
{
//第一个错误:
self::$error=“发送电子邮件太长”;
模具(自身::$error);
返回false;
}
如果(mb_strlen($password)<8)
{
self::$error=“PASS\u TOO\u SHORT”;
模具(自身::$error);
返回false;
}
为什么“传递电子邮件太长”从未分配给$error
我使用die来查看值,但是当输入第一个if块时,它总是死掉,并返回一个空值,另一方面,第二个“if”按预期工作 您是否在类中声明了变量static?当然,如果我没有,那么第二个if也会失败。你不需要检查长度>35。如果是这样的话,它将超过10。对不起,我不太明白你的意思。密码不得超过10,电子邮件不得超过35。你这是什么意思?你粘贴的代码很好,我查过了。搜索其他错误或粘贴更多代码。