Для чего это все... Эта штука меняет плейсхолдеры на значения
$SQL="UPDATE `users` SET `info`=':info' WHERE `id`=:id";
Так вот в $par1 у нас и будут сначала :info, потом :id;
str_replace тут бессильна, т.к в случае
$SQL="UPDATE `users` SET `info`=':par' WHERE `id`=:par2";
мы потеряем :par2, будет типа $Data[$par1].'2';
Пока вижу единственное костыльное решение это удваивать слеш... Но хотелось бы нормального решения
Denis Popov: Вы не напишете столь же безопасное решение, как PDO. Жертвовать безопасностью ради удовлетворения собственных эстетических запросов - это очень большая глупость. Если уж сильно что-то не нравится в PDO пишите ебёртку, но точно не подменяйте его работу на своё костыльное решение. Это так, мысли в слух...