Error Trapped: Array Offset Access on Boolean Value in PHP 7.4
Query:
After upgrading to PHP 7.4.1, the following error occurs:
Notice: Trying to access array offset on value of type bool in
within this code block:
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; }
Solution:
PHP 7.4 enforces stricter type checking, causing this error when $Row['Data'] might be null. To resolve this, use the null coalescing operator (??) to assign a default value if $Row['Data'] is null:
return $Row['Data'] ?? 'default value';
Alternatively, you can use the null coalescing assignment operator (??=) to set the default value if $Row['Data'] is null:
$Row['Data'] ??= 'default value'; return $Row['Data'];
위 내용은 PHP 7.4에서 \'오류 트랩: 부울 값에 대한 배열 오프셋 액세스\'가 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!