首页 > 后端开发 > php教程 > 为什么我在 PHP 7.4 中收到'错误陷阱:布尔值上的数组偏移访问”?

为什么我在 PHP 7.4 中收到'错误陷阱:布尔值上的数组偏移访问”?

Patricia Arquette
发布: 2024-11-15 04:18:02
原创
611 人浏览过

Why Am I Getting

陷入错误:PHP 7.4 中布尔值的数组偏移访问

查询:

升级到 PHP 7.4.1 后,出现以下错误:

Notice: Trying to access array offset on value of type bool in
登录后复制

此代码块内:

public static function read($id)
{
    $Row = MySQL::query("SELECT `Data` FROM `cb_sessions` WHERE `SessionID` = '$id'", TRUE);
    
    # http://php.net/manual/en/function.session-start.php#120589
    //check to see if $session_data is null before returning (CRITICAL)
    if(is_null($Row['Data']))
    {
        $session_data = '';
    }
    else
    {
        $session_data = $Row['Data'];
    }
    
    return $session_data;
}
登录后复制

解决方案:

PHP 7.4 强制执行更严格的类型检查,当 $Row['Data'] 可能为 null 时会导致此错误。要解决此问题,请在 $Row['Data'] 为 null 时使用空合并运算符 (??) 分配默认值:

return $Row['Data'] ?? 'default value';
登录后复制

或者,您可以使用空合并赋值运算符 (? ?=) 如果 $Row['Data'] 为 null,则设置默认值:

$Row['Data'] ??= 'default value';
return $Row['Data'];
登录后复制

以上是为什么我在 PHP 7.4 中收到'错误陷阱:布尔值上的数组偏移访问”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板