Обернуть в кавычки значение массива

Вячеслав Иванченко

Здравствуйте. Написал следующий метод для вставки строки в таблицу:

public static function insert($params = []){
$table = self::$tableName;
$columns = implode(", ", array_keys($params));
$values = "**'**'".implode("',**'**", array_values($params))."**'**"; //(!)
$sql = "INSERT INTO {$table} ({$columns}) VALUES ({$values})";
return Application::call()->db->query($sql);
}

Если не обернуть в кавычки занчение $values, то вместо вставки вываливается ексепшн. Насколько читаемо то, что происходит в строке (!)? Я вот не уверен, что если бы увидел эту строку в чужом коде, то понял бы что она делает. Может есть альтернативный вариант того же действия? Сначала сделал через array_map, но это лишние операции и разрастание кода.

Ну и в целом еще такой вот философский вопрос. Что должно быть в приоритете - читаемость кода или его лаконичность?

1 чел.