Не работает exit() в php

Я написал функцию обновления строки в таблице БД на php. Запросы отправляются с помощью PDO. Функция принимает в качестве аргументов название таблицы($table), айди($id), массив параметров для запроса($params). Массив $params в ней парсится и из него формируются данные для запроса, который собирается в переменной $sql. Далее он подготавливается и отправляется. А в конце проверяется с помощью функции dbCheckError() на корректность запроса. Проблема в том что проверка dbCheckError не работает, если например при вызове update() я неправильно его сформирую, например не напишу какой-то из аргументов, страница просто не загрузится. А должна выводится ошибка, вместе с завершением выполнения скрипта. Что я сделал не так?

 function dbCheckError($query){
    $errInfo = $query->errorInfo();
    if($errInfo[0] !== PDO::ERR_NONE){
        echo $errInfo[2];
        exit();
    }
    return true;
}
function update($table, $id, $params){
    global $pdo;
    $i = 0;
    $str = '';
    foreach($params as $key => $value){
        if($i === 0){
            $str .= "$key = '$value'";
        }else{
            $str .= ", $key = '$value'";
        }
        $i++;
    }
    $sql = "UPDATE $table SET $str WHERE id = $id";
    $query = $pdo->prepare($sql);
    $query->execute($params);
    dbCheckError($query);
}

Ответы (0 шт):