PHP5登录";语法错误,意外''&引用;使用时??操作人员

PHP5登录";语法错误,意外''&引用;使用时??操作人员,php,php-5.5,null-coalescing,Php,Php 5.5,Null Coalescing,此代码是登录表单的一部分,我希望确保该字段不为空。当我使用这行代码时,我得到以下错误: 语法错误,意外的“?” if(is_blank($admin['username'])) { $errors[] = "Username cannot be blank."; } elseif (!has_length($admin['username'], array('min' => 8, 'max' => 255))) { $errors[] = "User

此代码是登录表单的一部分,我希望确保该字段不为空。当我使用这行代码时,我得到以下错误:

语法错误,意外的“?”

 if(is_blank($admin['username'])) {
      $errors[] = "Username cannot be blank.";
    } elseif (!has_length($admin['username'], array('min' => 8, 'max' => 255))) {
      $errors[] = "Username must be between 8 and 255 characters.";
    } elseif (!has_unique_username($admin['username'], $admin['id'] ?? 0)) {
      $errors[] = "Username not allowed. Try another.";
    }
我知道我得到错误是因为我使用的是PHP5.5


谢谢大家!

是的,您需要使用以下语句:

 (isset($admin['id']) ? $admin['id'] : 0 )
由于PHP5.5没有
空合并运算符(PHP7及更高版本),因此需要使用老式的速记

请不要让我把它放在括号里,这样当它在括号内时就不会失败 if或else语句和/或函数

你也可以使用

$admin['id'] ?: 0;

但是当未设置
$admin['id']
时,这会发出通知。

有人知道如何解决此问题吗?