Неустранимая ошибка компиляции: неверный целевой релиз: 1.8 - > [Помощь 1]

Вставлять запросы часто требуется много заполнителей. Стиль вопросительного знака тогда трудно читать, и именованные параметры повторяются и подвержены ошибкам ввода. Итак, я создал функцию для всего запроса на вставку:

function insert($table, $col_val){
    global $db;
    $table = preg_replace('/[^\da-z_]/i', '', $table);
    $smt = $db->prepare("DESCRIBE `$table`");
    $smt->execute();
    $columns = $smt->fetchAll(PDO::FETCH_COLUMN);
    $sets = array();
    $exec = array();
    foreach($col_val as $col => $val){
        if(!in_array($col, $columns))
            return false;
        $sets[] .= "`$col`=?";
        $exec[] = $val;
    }
    $set = implode(',', $sets);
    $smt = $db->prepare("INSERT INTO `$table` SET $set");
    $smt->execute($exec);
    return $db->lastInsertId();
}

Использование прост:

insert('table_name', array(
    'msg'   =>  'New message',
    'added' =>  date('Y-m-d H:i:s'),
));

И если вам нужно lastInsertId():

$new_id = insert(...
147
задан Community 23 May 2017 в 12:18
поделиться

1 ответ

Используя IntelliJ я просто должен был установить другую (более высокую) Версию JDK. После перезапуска IDE все работало, и даже все зависимости были решены.

0
ответ дан 23 November 2019 в 21:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: