Trying to access array offset of value of type bool in PHP 7.4
P粉846294303
2023-08-24 09:06:21
<p>I just upgraded my server's PHP version to PHP 7.4.1 and now I'm getting this error: </p>
<blockquote>
<p>Note: Trying to access array offset on value of type bool</p>
</blockquote>
<pre class="brush:php;toolbar:false;">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;
}</pre>
<p>What is the fix for PHP 7.4? </p>
If your query does not return a row, then your variable $Row will be filled with false, So you can test whether the variable has a value before trying to access any index inside the variable:
Easy to use PHP
??
Null coalescing operatorOr you can use
like this