💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 静默模式 默认情况下,pdo采用“静默模式”处理错误: 就是发生了错误后,并不提示,而只是返回false。我们需要在程序中去判断返回是否为fale,然后,如果是false,再去“主动”获取错误信息。——跟mysql一样! ![](https://box.kancloud.cn/ddcfc3a476383fb1e9d89bbab6c948bb_1360x584.jpg) # 异常模式 基本语法: ~~~ try { 存在潜在错误的代码; if(逻辑错误) { //手工输出异常 throw new PDOException(‘错误的文本信息’,’错误号’); } } catch(PDOException $e) { echo ‘错误号:’.$e->getCode(); echo ‘错误行号:’.$e->getLine(); echo ‘错误的文本信息:’.$e->getMessage(); } ~~~ ![](https://box.kancloud.cn/cccfae5c32e5c598203e035e9858a067_1010x746.jpg) 要使用到的知识点: bool PDO::setAttribute ( int $attribute , mixed $value ) 主要功能:设置属性 参数说明: $attribute :要设置的属性 $value :要设置的属性值 PDO::ATTR_ERRMODE :PDO异常级别 ① PDO::ERRMODE_SILENT :常规错误,默认 ② PDO::ERRMODE_WARNING :警告错误 ③ PDO::ERRMODE_EXCEPTION :异常错误 示例代码: ![](https://box.kancloud.cn/b60a06e290894a098e249579a5ec26d3_1036x710.jpg) 可以简单理解为:适应面向对象语法的处理错误的一种语法结构。如下所示: try{ 在这里,可以执行“可能出错”的语句(多条也可以); 一旦发生错误,就会终止当前范围的后续程序执行, 而立即跳转到catch部分——处理错误! } catch( Exception $e ){ //一旦发生错误,就会进入这里,此时,并会生成一个“错误对象”; //该错误对象,就是系统类Exception的一个实例:它包含了错误信息。 } pdo要使用异常模式,就得专门设置(因为其默认是静默模式): $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); ![](https://box.kancloud.cn/27f20f3413fc70408739faf9616ab2be_1346x502.jpg)