Комментарии 15
$params['person_id']=array('57FA56C2',8);
$params['nickname']=array('USER',5);
Может быть вопрос глупый: почему параметром передается массив и что значит его второй элемент?
0
это не обязательные параметры см. binParam pdo php.net/manual/de/pdostatement.bindparam.php
0
сорри, массив просто удобен в случаях когда нужно передать несколько параметров для одного значения и если чило их может быть переменным.
0
bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )
Если это (8 и 5 в моем примере) тип, то почему не константой. Если длина, то почему не совпадает?
0
Почему — эмулятор?
Это скорее — адаптер.
Это скорее — адаптер.
0
Такие посты вынуждают меня опубликовать свою библиотеку для работы с бд :(
Есть ли толк?
Есть ли толк?
0
ну, если эта библиотека эмулирует pear::db :-) и вас попросят её опубликовать
0
Схожие методы, только немного реализация другая.
В любом случае это не повод для создания очередного топика :)
В любом случае это не повод для создания очередного топика :)
0
Вы поищите в сети подобную библиотеку, если не создавать топик то как людям искать нужное, суть хабра — делиться с другими. Или Вам известен другой способ поделиться не публикуя? У меня порядка 15 писем пришло с момента публикации первой стстьи с просьбой выложить новую реализацию, и это при том что код был уже доступен в сети. Поэтому, после очередного письма решил что имеет смысл написать тут. Может был неправ, теперь не уверен.
0
НЛО прилетело и опубликовало эту надпись здесь
да я, в принципе, не зацикливаюсь ни на pear ни на php, но если люди просят, как отказать. Насчет globals спасибо, убрал, осталась (уже ненужная) строчка от старой библиотеки, не заметил. А prepared statements я и реализовал через PDO но только, как мне кажется, сделал это более удобно для конечного пользователя (по крайней мере мне так удобнее).
0
Михаил, спасибо, что быстро откликнулись на мою просьбу.
У нас скрипт интернет-магазина, который использует pear (так уж повелось, скрипт с 2000 годов), который покупают клиенты для установки на сторонние хостинги. В скрипте активно используются pear::db и pear::auth и переписать в сжатые сроки весь скрипт без использования pear не представляется возможным.
На хостингах уже pear не устанавливают, сейчас срочно стал вопрос ухода с pear.
Жаль, что здесь используется pdo, на некоторых хостингах оно также не установлено.
Наверное буду делать модуль на основе Вашей старой версии для php4, но там не все функции pear::db реализованы и nextid создает много лишних временных таблиц, в общем придется допиливать.
Еще хочу спросить почему у Вас в методе connect так много параметров, они не соответствуют количеству параметров в pear:
У нас скрипт интернет-магазина, который использует pear (так уж повелось, скрипт с 2000 годов), который покупают клиенты для установки на сторонние хостинги. В скрипте активно используются pear::db и pear::auth и переписать в сжатые сроки весь скрипт без использования pear не представляется возможным.
На хостингах уже pear не устанавливают, сейчас срочно стал вопрос ухода с pear.
Жаль, что здесь используется pdo, на некоторых хостингах оно также не установлено.
Наверное буду делать модуль на основе Вашей старой версии для php4, но там не все функции pear::db реализованы и nextid создает много лишних временных таблиц, в общем придется допиливать.
Еще хочу спросить почему у Вас в методе connect так много параметров, они не соответствуют количеству параметров в pear:
function connect($dsn, $persistent = false)
0
Connect обычно стоит один раз о всем коде и не проблема его поправить, потому совместимость была прнесена в жертву. Хотя, конечно, никто не мешает перенести часть параметров в конструктор. Потому и предлагал допилить общими усилиями дабы всем нравилось, самому не всегда видны недостатки. Но, походу, благие намерения оборачиваются только потерей кармы :-) надеюсь хоть кому то был полезен.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Эмулятор PEAR DB средствами PDO с некоторым расширением функционала или простая надстройка над PDO