【问题标题】:How to use try catch如何使用try catch
【发布时间】:2016-06-15 23:10:33
【问题描述】:

我正在努力尝试这个:

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';
}

当他向右弹出时尝试但显然何时去接球并没有显示回声

【问题讨论】:

  • 您的问题到底是什么?你认为当错误发生时它永远不会进入捕获?
  • 这是一个很好的例子,说明如何使用 php 的 try catch 块 stackoverflow.com/questions/17549584/…

标签: php database laravel try-catch


【解决方案1】:

改变你的

catch (Exception $e) 

catch (\Exception $e) 

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

【讨论】:

    【解决方案2】:

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

    如果出现错误,我们会使用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.".";
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-07
      • 1970-01-01
      • 2012-11-25
      • 2012-03-04
      • 2021-04-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多