Fehler- und Aus...LOGIN

Fehler- und Ausnahmebehandlung

Fehlerausnahmebehandlungsmodus: PDO::ERRMODE_EXCEPTION

  Als Anhang zum Festlegen des Fehlercodes löst PDO eine PDOException aus und legt seine Eigenschaften so fest, dass sie den Fehlercode und die Fehlerinformationen widerspiegeln. Diese Einstellung ist auch beim Debuggen sehr nützlich, da sie die Fehlerstelle im Skript effektiv „aufbläht“ und sehr schnell auf einen möglichen Fehlerbereich in Ihrem Code hinweist. (Denken Sie daran: Wenn eine Ausnahme zum Abbruch des Skripts führt, wird die Transaktion automatisch zurückgesetzt.)
Der Ausnahmemodus ist auch sehr nützlich, da Sie eine klarere Struktur als die herkömmliche Fehlerbehandlungsstruktur im PHP-Stil verwenden können Code und Verschachtelung als im stillen Modus und kann den Rückgabewert jedes Datenbankzugriffs expliziter überprüfen.

微信图片_20180305114759.png

Der fertige Code lautet wie folgt:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/5 0005
 * Time: 上午 9:23
 */
header("Content-Type:text/html;charset=utf-8");
//mysql:host:localhost;port=3306;dbname=php;charset=utf-8
$dbms='mysql';
$host='localhost';
$port='3306';
$dbname='php';
$charset='utf-8';
//用户名与密码
$user='root';
$pwd='root';
$dsn="$dbms:host=$host;port=$port;dbname=$dbname;charset=$charset";
try{
    $pdo=new PDO($dsn,$user,$pwd);
    //设置错误处理
//    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_SILENT);   //0 默认模式
//    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);  //1  警告处理模式
    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);//2
//    $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ATTR_ERRMODE);     //3
    //预处理sql语句
//    $stmt=$pdo->prepare("insert into book(name,author)values(?,?)");
    $stmt=$pdo->prepare("select *from phpbook");
    $stmt->execute();
    //获取错误信息
    $code=$stmt->errorCode();
    $info=$stmt->errorInfo();
    //输出相关信息
    print_r("错误码:".$code."<br>");
    print_r("错误信息:");
    print_r($info);
}catch (PDOException $exception){
    echo $exception->getMessage().'<br>';
}

Laufende Ergebnisanzeige:

微信图片_20180305114907.png

nächsten Abschnitt
<?php echo "PDO异常处理模式";
einreichenCode zurücksetzen
KapitelKursunterlagen