我通常使用以下语句进行pdo MySQL查询
$query = $db->prepare('MySQL statement');
$result = $query->execute(array())
Then use $query->fetch or fetchcolumn (to check Count(*)) to fetch data.
我的问题是 – 是否需要测试$result是否真实?在生产环境中,如果MySQL已关闭,则在我们声明新PDO时将存在错误.
在什么情况下我需要测试执行是真还是假?
解决方法:
它取决于PDO :: ATTR_ERRMODE,如Errors and error handling章节中所述.
如果将PDO配置为抛出异常(PDO :: ERRMODE_EXCEPTION)则为no,PDO将在出错时自动抛出异常.
在任何其他情况下(使用默认的PDO连接选项或显式设置PDO :: ERRMODE_SILENT或PDO :: ERRMODE_WARNING)然后是,您需要手动验证每个单独操作的成功.
PDO :: ERRMODE_EXCEPTION不是默认值是没有用的,但是,您知道,PHP有一些隐藏有用错误消息的历史记录,这是因为某些误导的用户友好性.
标签:php,mysql,pdo
来源: https://codeday.me/bug/20190727/1554529.html