Estoy trabajando en un framework PHP y actualmente estoy diseñando el manejo de errores. Basado en lo que he leído en SO, solo debería usar excepciones para, bueno, situaciones excepcionales. Por lo tanto, lanzar una excepción cuando se ingresa una contraseña incorrecta es incorrecta.¿Es malo lanzar excepciones a los errores del servidor de retorno, por ej. ¿404 Pagina no encontrada?
¿Debo evitar el uso de excepciones cuando deseo devolver un código de error del servidor al usuario (por ejemplo, 404 Página no encontrada)? Si es así, ¿debería escribir mi propia clase de manejo de errores?
Tengo una pregunta de seguimiento para cualquiera que responda a esta pregunta: Supongamos que un usuario visita una página con 3 registros en ella. Hacen clic en un enlace para editar un registro en particular, pero entre el momento en que se emitió la página de la lista y la hora en que hacen clic en el registro, ese registro en particular fue eliminado de la base de datos. ¿Debe la página de edición arrojar una excepción cuando la función de recuperación de la base de datos devuelve NULL?Obviamente, el código que representa la vista manejaría tales excepciones y mostraría un mensaje de error apropiado, pero tengo curiosidad acerca de cómo se manejaría esa situación internamente. –
@RenderIn Si el controlador/vista pudiera establecer la respuesta a 404, y mostrar una página adecuada "que falta", diría que es el mejor lugar para manejarlo (ver mi respuesta). Dicho esto, cuando se está creando un prototipo de algo, es mucho más fácil simplemente lanzar la excepción sabiendo que el controlador de error al menos alertará al usuario de que la solicitud no fue exitosa. –