Ale i tak będę to musial przystosować do roznych zapytan z preparowaniem. Dobra czas do roboty w praktyce wyjdzie może
Próbowałem to jakoś zrobić, żeby sobie stworzyć funkcję i nie pisać za każdym razem:
$stmt = $database->prepare('SELECT * FROM settings WHERE id = :id');
$stmt->bindValue(':id', 1, PDO::PARAM_INT);
$stmt->execute();
$row = $stmt->fetch();
W postaci tablic odpowiednie wartości przesyłałem, np:
$connection->query(array('query' => 'SELECT * FROM settings WHERE id = :id', 'values' => array(':id' => $id)));
Chcąc dodać jeszcze typ zmiennej musiałbym 3-wymiarową tablicę zrobić

To się stanie jeszcze bardziej skomplikowane niż "normalne" wywoływanie.
Czy pisząc w PDO za każdym razem programiści taki
$stmt = $database->prepare('SELECT * FROM settings WHERE id = :id');
$stmt->bindValue(':id', 1, PDO::PARAM_INT);
$stmt->execute();
$row = $stmt->fetch();
kod wykonują z każdym zapytaniem? chyba nie..