php, mostrar errores E_NOTICE
Seguramente la configuración del fichero php.ini de tu servidor oculte los errores E_NOTICE
Según la web de php.net…
En PHP 4 y PHP 5, el valor predeterminado es E_ALL & ~E_NOTICE. Este valor no muestra errores de nivel E_NOTICE.
Al habilitar E_NOTICE durante el desarrollo de software tiene algunos beneficios. Para propósitos de depuración: los mensajes NOTICE le advertirán sobre posibles fallos en su código.
¿Que son los errores E_NOTICE?
Avisos detectados en tiempo de ejecución al utilizar una variable no inicializada
Incorrecto:
- define(TXT_LANG,’Idioma’);
- $_GET[url]
Los casos anteriores aunque funcionen, producen un error E_NOTICE, ya que php interpreta TXT_LANG y url como constantes no definidas
Correcto:
- define(’TXT_LANG’,'Idioma’);
- $_GET['url']
¿Como mostrar los E_NOTICE?
Para mostrar todos los errores, puedes hacerlo de 2 maneras:
- si tienes permisos para editar el fichero php.ini, abrelo, busca error_reporting y asignarle E_ALL, quedando asi:
error_reporting = E_ALL - si tu servidor no te permite editar el php.ini, puedes introducir al principio del código y después de <?php:
error_reporting(E_ALL);
Post dedicado a:
util:
ini_set(’display_errors’,'On’);