如何使用try catch

时间:2016-03-02 21:26:14

标签: php database laravel try-catch

我试图抓住这个尝试:

Config::set( 'database.connections.information_schema', array ( 
    'driver'     =>  'mysql', 
    'host'       =>  'localhost', 
    'port'       =>  '3306', 
    'database'   =>  'information_schema', 
    'username'   =>  'root', 
    'password'   =>  '1', 
    'charset'    =>  'utf8', 
    'collation'  =>  'utf8_unicode_ci', 
    'prefix'     =>  ''
    // 'strict'    => false, 
)); 

try 
{
    $datos = DB::connection('information_schema')->getDatabaseName();    
    echo "Conectado correctamente a la base de datos: ".$datos.".";
} 
catch (Exception $e) 
{
    echo 'Error';
}

当他向右喷射时尝试,但显然何时去捕获并不显示回声

2 个答案:

答案 0 :(得分:4)

更改您的

catch (Exception $e) 

catch (\Exception $e) 

有关importing/aliasing namespaces的更多信息;您还可以在文件顶部添加use Exception;。在docs

中查找更多内容

答案 1 :(得分:-1)

我想数据库连接是在一些函数/方法中。如果不是,只需将代码放在某个函数中即可。

如果出现错误,我们会使用return命令跳出该函数,并仅在try块内的代码成功时继续。

这样的事情:

...
try {
    $datos = DB::connection('information_schema')->getDatabaseName();    
} catch (Exception $e) {
    echo 'Error';
    return false;
}
//connected successfully
echo "Conectado correctamente a la base de datos: ".$datos.".";
...