问题
我们告诉 PDO 将每个问题包装成异常。在某些情况下,它会生成一些警告,然后才抛出异常。
它为什么这样做?
重复?
关于它没有关于 SO 的正确答案。最后一个问题是MySQL 上的 PHP PDO 异常 + 警告已经消失?但人们只是将其标记为重复而不是仔细回答。
接受的答案不回答为什么这样做以及何时这样做。所以我研究了一下,会回答的。
这是因为 PDO 可以使用 mysqlnd 驱动程序,该驱动程序不遵守任何 PDO 的“将问题转换为扩展”策略。
只需查看mysqlnd 驱动程序的来源即可。
我们清楚地看到有对 的直接调用php_error_docref。
上一个问题中显示的示例之一由以下几行解释:https://github.com/php/php-src/blob/PHP-5.5.31/ext/mysqlnd/mysqlnd_wireprotocol.c#L35 :L61
| 归档时间: |
|
| 查看次数: |
481 次 |
| 最近记录: |