Introducción
En este tutorial, explicaremos todas las diferentes formas de habilitar errores y advertencias de PHP. Puede encontrar problemas con su aplicación web PHP y necesitar ver todos los errores y advertencias. También veremos cómo escribir errores en un archivo de registro.
Es muy común que todos los desarrolladores cometan un error durante el desarrollo, lo que resultará en una pantalla blanca de la muerte (WSOD), porque es probable que el informe de errores de PHP esté desactivado.
Veamos tres formas diferentes de ver los errores de PHP.
- Añadiendo líneas de código a nuestro php.
- Editando el archivo de configuración principal de PHP:
php.ini
- Ver errores usando el archivo
.htaccess
Mostrar todos los errores de PHP
La forma más rápida de ver todos los errores y advertencias de PHP es agregar estas líneas al archivo PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
/*... il resto del tuo file... */?>
La ini_set
intentará anular la configuración que se encuentra en su archivo PHP ini.
Display_errors
y display_startup_errors
son sólo dos de las directivas disponibles. La directiva display_errors determinará si los errores se mostrarán u ocultarán al usuario. Por lo general, la directiva dispay_errors debe desactivarse después del desarrollo.
Display_startup_errors, sin embargo, es una directiva separada porque display_errors no maneja los errores que se encontrarán durante la secuencia de inicio de PHP.
Configure el archivo php.ini para ver errores
A continuación, le mostramos cómo puede habilitar el informe de errores utilizando el archivo php.ini. Debe encontrar el archivo php.ini según la configuración de su software y la distribución de Linux que esté utilizando.
El archivo php.ini puede estar ubicado en el /etc/php/7. x /apache2/php.ini
si está usando apache2, en /etc/php/7. x /fpm/php.ini
si tiene php-fpm instalado, o en /etc/php.ini
. También puede estar en otras ubicaciones si ha elegido instalar PHP en un directorio personalizado.
7.x
Una vez que encuentres el archivo, ábrelo con tu editor de texto, en este caso usamos nano:
sudo nano /etc/php/7.2/apache2/php.ini
Busque y modifique los display_errors
configurándolo en on
, y el parámetro error_reporting
E_ALL
:
error_reporting = E_ALL
display_errors = on
Estas configuraciones deben deshabilitarse si la aplicación web está en producción.
Ver errores de PHP a través del archivo.htaccess
Los desarrolladores generalmente tienen acceso a los archivos en el directorio raíz (la carpeta principal donde generalmente se carga el sitio web). La directiva para mostrar errores de PHP también se puede habilitar o deshabilitar usando el .htaccess
ubicado en el directorio principal o público del proyecto.
Para ver los errores de PHP usando el .htaccess
, debe agregar las siguientes líneas al archivo:
php_flag display_startup_errors on
php_flag display_errors on
La ventaja de mostrar o deshabilitar los mensajes de error de esta manera es que el desarrollo y la producción pueden tener diferentes archivos.htaccess. Además, muchos proveedores de alojamiento no le permitirán modificar su php.ini
para habilitar display_errors.
En el archivo.htaccess, también puede habilitar un registro de errores personalizado siempre que el servidor web pueda escribir en la carpeta de registro o el archivo de registro. El archivo de registro puede ser una ruta relativa donde se encuentra el .htaccess
, o puede ser un camino absoluto.
php_value error_log logs/all_errors.log
Conclusión
En este tutorial hemos visto cómo ver los errores de PHP con tres métodos diferentes. Habilitando errores con el código PHP en nuestros archivos.php, usando el archivo de configuración principal php.ini, y finalmente ingresando parámetros en el archivo.htaccess.