Alguna vez te ha aparecido el siguiente error de tipo Warning:
Trying to access array offset on value of type bool in...
Este error comienza a aparecer a partir de la versión de PHP 7.4. Anteriormente podíamos intentar acceder a los índices o propiedades de un arreglo que no estuviera definido, por ejemplo, cuando solicitamos información de una base de datos, ésta viene en formato de arreglo, pero si la solicitud no es encontrada la variable quedará vacía y será interpretada como una variable booleana con valor falso.
Por ejemplo, variable $Row desea traer información desde la base de datos:
$Row = MySQL::query("SELECT `Data` FROM `cb_sessions` WHERE `SessionID` = '$id'", TRUE);
Pero ¿Qué sucede si la solicitud no es encontrada?, la variable $Row quedará igual a false.
Entonces si intento ingresar a cualquier propiedad que podría contener la variable $Row me aparecería el siguiente error:
$session_data = $Row['Data'];
WARNING: Trying to access array offset on value of type bool in...
La solución sería preguntar primero si la variable $Row es un arreglo con la función is_array():
if(is_array($Row)){
$session_data = $Row['Data'];
}
De esta manera estamos evitando intentar acceder a una propiedad que no existe si la variable $Row no es un arreglo.
Si quieres aprender más de PHP te recomiendo este curso: El curso más completo de PHP en español.
Si deseas ver esta explicación en video te invito a que visites el canal de YouTube de Tutoriales a tu Alcance dando clic en el botón de reproducción:
Desarrollador Web
13/10/2021
12395 Visitas
Usamos cookies para brindar nuestros servicios. Al utilizar este sitio web, acepta esto. Conoce nuestras políticas de Cookies