Pull to refresh
0
0
Send message
Вот сижу и пытаюсь понять а в чем же разница (концептуально) между PDO и MySQLi.

Тут же на хабре нашел интересную статью
habrahabr.ru/post/141127/
И первый же момент
Выбирать нужно было между MySqli и PDO. После не очень длительного изучения решил остановиться на MySqli, так как, как мне тогда казалось, он полностью идентичен PDO, за исключением того, что нет возможности отказаться от MySQL в пользу чего-то другого. Как я напишу ниже это не совсем так, минимум одно заметное отличие есть.

MySqli рекомендован к использованию самими разработчиками PHP.[1]

Вот и не пойму? Это холивары такие: мы за PDO, MySQLi — г-но?

Кстати полностью согласен с комментом:
habrahabr.ru/post/141127/#comment_4718702
Хотя вот все же не пойму, вот кусок из PDO Manual
$sql = 'SELECT name, color, calories FROM fruit ORDER BY name';
foreach ($conn->query($sql) as $row) {
print $row['name']. "\t";
print $row['color']. "\t";
print $row['calories']. "\n";
}

так в чем же разница от MySQLi?

MySQLi делает тоже самое.
— все равно писать свои запросы
— все равно делать выборки и обрабатывать их
— все равно есть Statement
Да. Для моих целей его вполне достаточно (возможно и кому-нибудь еще пригодится).
Спасибо за ссылку.

Такой стиль был навеян системой IP.Board.
Спасибо.
Дальше планирую написать как осуществлять взаимодействие с этим API с клиентских устройств. В таком порядке: iOS, Android, WP7.
Если вы про это ru.wikipedia.org/wiki/PHP_Data_Objects, то слышал, слышал.

Но наверное не очень понял к чему это?

HP Data Objects (PDO) — расширение для PHP, предоставляющее разработчику простой и универсальный интерфейс для доступа к различным базам данных.

Я не ставил целью написать API для работы с БД. Например картинка в последнем методе не делает запросов к базе.
Я с вами согласен здесь совершенно отсутствует реализация защиты. Собственно это планирую внедрить в следующей доработке.
Однако на ваш пример отвечаю: в ответ на запрос
www.example.com/api/?apitest.getApiEngineByName=test
Сервер вернет вот такой ответ:
{«response»:{},«error»:«Method getApiEngineByName does not exist»}

Information

Rating
Does not participate
Registered
Activity