/ / Salida de error en PHP

Salida de errores en PHP

No importa cuán cuidadoso y atentoProgramador web, durante su trabajo, errores e inexactitudes son posibles. Como resultado, esto puede conducir a una falla del sitio o servicio. Para la depuración durante el desarrollo del proyecto, es posible incluir salida de error en PHP.

¿Cómo funciona?

PHP ciertamente reacciona a este o aquel códigoguión En algunos casos, realizar la acción necesaria, en otros, muestra un error. Este mecanismo ayuda al desarrollador a corregir fallas en el momento de implementar la sección de códigos.

errores de salida php

Sin embargo, la salida de errores en PHP no siempre es necesaria. Una vez que se completa el desarrollo del proyecto, esta función está desactivada, para evitar el pirateo o el acceso no autorizado.

Personalizar

Para toda la configuración del intérprete PHP,archivo php.ini Tiene una directiva error_reporting, que solo define el resultado de los errores en PHP. Sin embargo, a pesar de que incluye el manejo de excepciones, display_errors es responsable de mostrarlos en la ventana del navegador. Si está deshabilitado, el sistema muestra una página en blanco en lugar de un error.

Clasificación de excepciones

La salida de errores en PHP se puede dividir condicionalmente en varias categorías:

  • errores, como resultado de lo cual el script dejará de funcionar. El llamado, fatal. Estos incluyen E_ERROR, E_COMPILE_ERROR;

  • errores que pueden ser eliminados. Sus valores para la directiva error_reporting pueden ser: E_WARNING, E_NOTICE y otros.

Vale la pena considerar con más detalle cada tipo y describir su funcional.

  • E_ERROR. Por lo general, este tipo se refiere a tales errores que no pueden eliminarse rápidamente o continuar la ejecución del script. Esto puede incluir problemas con la asignación de memoria;

  • E_ADVERTENCIA. El código seguirá funcionando, pero se mostrará una advertencia de que hay algún error, cuyo código se indica en el mensaje. No crítico;

  • E_NOTICE. Notificaciones que muestran: ha sucedido algo que podría causar un error. Además, no es crítico para la ejecución del código;

  • E_USER_ERROR. Errores generados por el usuario;

  • E_ALL. Esto incluye todo tipo de errores. Normalmente, esta opción está habilitada de forma predeterminada al instalar el intérprete.

Cómo habilitar la salida de error en PHP

Método de uso de mecanismos de error en PHPpuede diferir dependiendo de dónde se aplica el código, en un servidor o en una computadora local. En el segundo caso, el desarrollador puede configurar su servidor y mostrarlo como lo desee, es decir, cambiar la configuración en el archivo php.ini. Es suficiente dar dos directivas: display_errors y error_reporting a la siguiente forma:

display_errors en

error_reporting E_ALL

Estos comandos mostrarán todos los mensajes de error directamente en la ventana del navegador.

php enable reporting de errores

Si el desarrollo se lleva a cabo en un virtualhosting, entonces la mayoría de las veces la función de visualización de error está deshabilitada por razones de seguridad. Por lo tanto, para activarlo, deberá usar el archivo de configuración del servidor Apache htaccess. Por lo general, está en la raíz del sitio. Debe agregar un par de líneas con cualquier editor de texto:

php_flag display_errors en

php_value error reporting -1

También puede generar errores directamente desde el código utilizando la función ini_set (). Sin embargo, debe tenerse en cuenta que después del desarrollo del sitio, su aplicación puede causar problemas de seguridad.

php salida de errores a archivo

Escribir en el archivo

PHP le permite guardar todos los errores que ocurrieron en una ubicación específica en el disco duro. Para incluir el resultado de los errores de PHP en un archivo, puede usar tres métodos:

  1. edite el archivo php.ini Aquí debes definir dos líneas. El primero es log_errors = On, que realmente activa la capacidad de salida. El segundo es error_log = ruta / al archivo / deseado.

  2. Editar htaccess. También puedes agregarle dos líneas. php_value log_errors "on" y php_value error_log path / al archivo.

  3. Use la función ini_set en el lugar de código requerido.

Conclusión

La salida de errores en PHP es una herramienta necesaria endepurando el código. Pero también puede crear áreas potencialmente vulnerables. Por lo tanto, es necesario usar este mecanismo con cuidado y cuidado. Después de que el sitio o servicio ha superado todas las etapas de prueba, debe asegurarse de que no muestre errores por los cuales un atacante puede acceder a datos importantes.