【发布时间】:2014-01-18 22:48:19
【问题描述】:
我正在创建相当大的导入脚本。我想查看任何有问题的(未执行的)SQL 查询。我在使用 try-catch PHP 块捕获错误的 SQL 查询时遇到问题。
我有一个问题:
SELECT id FROM tag WHERE name IN ()
当然有一个错误,所以我想用这段代码打印这样的查询:
$sql = "SELECT id FROM tag WHERE name ".$tagsSql."";
try
{
$query = mysqli_query($this->mysqli, $sql);
$result = $query->fetch_assoc();
}
catch(Exception $e)
{
echo 'Problem with: '.$sql;
print_r($e); die;
}
运行脚本时,PHP 会抛出这个:
Fatal error: Call to a member function fetch_assoc() on a non-object in C:\www\blackboard-import\index.php on line 227
为什么没有捕捉到这个错误?因为它是致命的?我该如何处理这种情况? 我使用mysqli来联系MySQL。
【问题讨论】:
标签: php mysql sql mysqli try-catch