Download the PHP package furiosojack/lara-exception without Composer

On this page you can find all versions of the php package furiosojack/lara-exception. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package lara-exception

Latest Stable Version Total Downloads License

GitHub forks GitHub stars GitHub issues

Español

Licencia

El codigo de licencia debe seguirse al pie de la letra, si usted utiliza esta libreria los derechos de autor deben estar incluidos en todas la copias.

Para mas informacion la puede encontra en el archivo LICENSE.txt.

Descripcion

Es un generador de excepciones, su fin es lanzar excepciones controladas al usuario con la posibilidad de generar log detallados al desarollador.

El paquete es capaz de detectar una application/json de una peticion http por defecto.

Este paquete entrega al usuario una vista en caso de ser http normal en donde se vera mensaje del error y un codigo de error, si la peticion es JSON el error sera devuelto en un resonse en formato JSON.

Instalacion

Ejecutar en la consola dentro en la raiz del proyecto el comando:

o añadiendo directamente el el archivo composer.json


Si usted tiene una version de Laravel < 5.6 debe hacer lo siguiente :arrow_down: :arrow_down:

Luego en el archivo config/app.php incluir el siguiente service provider

y en el mismo archivo mas abajo la siguiente alianza

Si usted tiene una version de Laravel < 5.6 debe hacer lo siguiente :arrow_up: :arrow_up:


En su archivo app/Exceptions/Handler.php es necesario incluir la clase LaraExceptionManager en ese archivo. Se puede hacer de la siguiente forma.

Iportar la clase

ahora la clase Handler.php en lugar de extender de ExceptionHandler debe extender es de LaraExceptionManager
quedando algo como esto:

Para finalizar debe pulicar la configuracion para ello en su consola debe ejecutar el comando.

Metodos

EL paquete provee unos parametros para ser la excepcion mas personalizada.

Ejemplos

Lanza una excepcion con el mensaje indicado

Lanza una excepcion con un codigo de debugueo personalizado

Lanza un excepcion con detalles y con debug code perzonalizado

Lanza un excepcion con detalles y con debug code perzonalizado y un log

Lanza un excepcion con detalles y con debug code perzonalizado y un log y muestra los detalles al usuario

En el siguiente ejemplo corresonde a la forma de enviar los errores en un array, solo funciona cuando la peticion tiene el header Accept: applitacion/json

Se puede hace varias combinaciones de los metodos ya que estan encadenados pero obiamente teniendoen cuenta que el metodo build() siempre sea el ultimo.

Tambien puede usar el helper en lugar de usar la fachada como se mosotro anteriormente, para usar el helper puede usar los mismos metodos ya mostrados, por ejemplo para relizar

El primer parametro que recibira esta funcion sera el mensaje

Salidas

En el caso de que la peticion sea JSON la respuesta se veria algo como:

Si es una peticion es http normal se le mostrara una vista

ver

Ejemplo de logs

ver

Excepciones Personalizadas

Estilo Visual(view)

Solo es valido para excepciones que ocurran desde el navegador o que no sea una peticion JSON !!!!

Si usted necesita que su proyecto o paquete pueda tener un estilo unico de excepciones tanto de vista o tenga unas caracteristicas especiales.

Es decir si por ejemplo usted esta programando un paquete para laravel y probablemente su paquete lo utilicen otras personas que tambien podrian estar utilizando LaraException y quiere que su paquete tenga un estilo visual(view) unico de excepciones. O si esta programando un proyecto en Laravel y necesita un estilo visual(view) diferente al por defecto.

Para hacer eso posible es necesario que en la configuracion que tiene que estar en el proyecto en config/LaraException.php debe crear un estilo con el siguiente formato:

Tenemos a blog como key queriendo decir que este estilo se llama blog, ahora dentro de este array existen dos claves la view que represanta la vista que se mostrara cuando ocurra una excepcion.

La clave redirect representa si quiere que cuando ocurra una excepcion se redireccione a la url de LaraException (/LaraException?errors=dsfdsfsdfsd).

:pencil: PD:

Yo recomiendo dejarlo en true ya que esto permite que cuando un usuario haga una solicitud de tipo POST y se lance una exception esta se redireccion para que el usuario no pueda dar F5 o recargar la pagina y evitar nuevamente un error.

Como ya usted tiene un estilo definido puede usar el LaraException de la siguiente manera

De esa forma cuando ocurra la excepcion la vista que se mostrara al usuario sera la que usted especifico en la configuracion.

Nueva vista

Si quire crear una nueva vista es por que tiene un nuevo estilo de excepcion, pero si lo que quiere es no especificar cada vez que lanza un LaraExcepcion el estilo pero con una vista diferente a la por defecto le recomendamos que lea la siguiente seccion.

Para crear una vista compatible con LaraExeption la vista tiene que ser blade. Las variables a las que tendra acceso en su vista seran las siguientes:

Editar Default

Para editar la vista por defecto es necesario publicala en su proyecto para ello ejecute en su consola lo siguiente

de esa forma ahora tendra esta carpeta resources\views\vendor\LaraException, donde estara la vista llamada error.blade.php la cual es la que usted personalizara.

Captuara de otras excepciones y reglas :scream_cat:

Suele suceder que se su proyecto tenga otro tipo de excepciones que no son precisamente lanzadas por LaraException.

Por ejemplo al entrar a una ruta que no existe se lanzara la excepcion NotFoundHttpException la cual por defecto Laravel mostrara una vista con el error "Sorry, the page you are looking for could not be found.".

Si usted lo desea puede hacer que LaraExcepcion tambien se encargue de este tipo de excepciones y retorne una vista que usted quiera o que simplemente ahora se lanzes una excepcion de LaraExcepcion, usted debe hacer lo siguiente:

Para el ejemplo se quiere que cuando se lance una excepcion de NotFoundHttpException y que ademas si en la url tiene el texto blog se ejecute es por una excepcion de LaraExcepcion.

Entonces para ello es necesario añadir en un servis provider; en el caso de estar trabajando en un proyecto se deberia registrar en el metodo register de App\Providers\AppServiceProvider si esta trabajando es en un paquete de laravel añadlo en el metodo register de su service provider.

Con la ayuda del metodo addExceptionCallBack del MasterManager de LaraException usted puede indicar una funcion que contendra un logica que usted necesite pero que para el ejemplo es ejecutar una excepcion de LaraException cuando se lanaza una NotFoundHttpException y que ademas tenga en su url el texto blog

El la funcion que se añade recibe dos parametros, el $request que es el objeto de la solicitud y el parametro $exception que es la excepcion que se lanzo.

Siguiendo con el ejemplo verifico si en e la url esta la palabra blog url que se obtiene por medio del metodo getPathInfo que tiene el $request, al ser verdadero lo que hago es lanzar una excepcion de LaraExcepcion con su helper y adicionalmente indicando el estilo que quiero y finalizando con el codigo de error que quiero que entregue. :scream_cat: :scream_cat: :scream_cat: :scream_cat:

Sin embargo esto solo es una de las miles de cosas que se podrian hacer con un poco de imaginacion. :smirk: :smirk: :smirk: :muscle:

FIN


All versions of lara-exception with dependencies

PHP Build Version
Package Version
Requires php Version >= 7
laravel/framework Version ~5.6
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package furiosojack/lara-exception contains the following files

Loading the files please wait ....