2016-06-01 9 views
0

Ich möchte wissen, wie benutzerdefinierte Ausnahmemeldungen in Codeigniter zu werfen, wenn einige Situationen, wie folgende Ereignisse eintreten:

Wie benutzerdefinierte Exceptions in Codeigniter werfen?

  1. Verbindung zur Datenbank aus irgendeinem Grund fehlgeschlagen (ich meine eine nicht vorhandene Datenbanknamen absichtlich gab in application/config/database.php-Datei zu testen und versuchte, sich auf $ try-catch zu tun this-> db-> get(), aber es hat nicht funktioniert. Codeigniter hat seine eigene Fehlermeldung)

2. Eine Methode kann nicht ausgeführt werden. Ich habe versucht, etwas zu tun, wie ::

try 
{ 
    $this->model_name->myfunc();//myfunc is a non-existent method but any other reason for failure should be handled too using custom message 
}catch(Exception $e) 
{ 
    echo "Method failed to run"; 
} 

Dies nicht zu gearbeitet hat

Antwort

0

Es gibt so viele Arten von Ausnahmen, vielleicht müssen Sie zum Beispiel ein mysqli_sql_exception

 try{ 
     // some code to connect to db 
    }catch(mysqli_sql_exception $e) 
    { 
     return 'Custom message'; 
    } 
fangen
0

In Ihrem Beispiel können Sie versuchen, die throw new Exception, wie folgt:

try 
{ 
    $this->model_name->myfunc();//myfunc is a non-existent method but any other reason for failure should be handled too using custom message 
}catch(\Exception $e) 
{ 
    throw new \Exception("Method failed to run"); 
} 
+0

Vielen Dank für die reply.But diese Technik nicht Meldung working.Following wurde gezeigt: Eine abgefangene Ausnahme Typ aufgetreten: Fehler Nachricht: Call to undefined Methode model_name :: myfunc() – stackoverflownewbie

+0

Sie müssen auch auf Verlasse den Root-Namespace, schreibe also eine Ausnahme auf diese Weise: '\ Exception' – odannyc

Verwandte Themen