Laravel 4 - repérer les erreurs
Il semble que ce n'est pas possible d'intercepter les erreurs vous-même, insted de l'obtention de la laravel 4 sortie d'erreur.
Par exemple, si j'essaie d':
$databaseConfig = Config::get('database.connections.mysql');
$connect = mysql_connect($databaseConfig['host'], $databaseConfig['username'], $databaseConfig['password']);
if (!$connect)
{
return 'error';
}
Si une erreur se produit je n'obtiendrez pas le "erreur", insted laravel me montre à l'exception (sur orange site).
Le même si vous allez de l'avant et essayer un
try {
$pdo = DB::connection('mysql')->getPdo();
}
catch(PDOException $exception) {
return Response::make('Database error! ' . $exception->getCode());
}
Est-il un moyen de le faire?
Vous devez vous connecter pour publier un commentaire.
Le code que vous avez fournie devrait fonctionner parfaitement. Si j'ai mis cela dans mon routes.php je vois l'erreur de chaîne de caractères (sans le orange).
Ce qui se passe ici, c'est que votre PDOException n'est pas pris. Essayez ajout d'une barre oblique inverse à la PDOException de sorte que vous serez sûr que c'est celle qui est définie dans la racine et pas dans l'espace de noms courant.
Aussi, essayez d'exécuter le code directement à partir de l'intérieur de la routes.php fichier et voir si elle se comporte de la même.
use PDOException;
dans la mendicité des fichierPrendre un coup d'oeil à cette page: http://laravel.com/docs/errors
Exemple rapide:
return Redirect::to('route.name')->withErrors($errormsg);
est un bon moyen pour afficher des messages d'erreur.mettez ce code dans votre fichier de route...
, vous obtiendrez le MESSAGE d'ERREUR de NOM de FICHIER et la LIGNE d'ERREUR
tous la plupart des erreurs seront couverts.
Je sais que ma réponse est très tardive. Mais après de référencement de réponses ci-dessus, je n'avais pas résolu le problème.
Après avoir regardé ce site (très claire explication ici): https://stackify.com/php-try-catch-php-exception-tutorial/
Ici est une réponse supplémentaire: