Подготовленные запросы (mysqli) не выдаются в массив

Статус
В этой теме нельзя размещать новые ответы.

BelStudent

целеустремлённый чел
Подготовленные запросы (mysqli) не выдаются в массив

Обноружил в mysqli, что подготовленные запросы не выдаются в массив. То что можно в переменные (fetch) - это хорошо, но как поместить информацию сразу в массив? Надеюсь на существование, что либо на подобие fetch_assoc()

P.s. Блин не в тот раздел запостил, модеры перенесите тему.

-~{}~ 29.07.09 02:16:

Вроде нашёл способ
http://ru.php.net/manual/en/mysqli-stmt.fetch.php (комменты)
но как-то криво он смотриться, по другому никак?
 

BelStudent

целеустремлённый чел
Пробывал, поэтому пишу сюда.

-~{}~ 29.07.09 02:28:

Есть ещё такая бешеная идея: создать свой класс, сделать placeholders, но запрос будет отправляьться как обычный (никаких фирменных php-шных подготовленных запросов)
 

dimagolov

Новичок
BelStudent, если таки не пойдешь в сторону PDO, то поищи по той страничке, что я дал, слово assoc или row
 

BelStudent

целеустремлённый чел
dimagolov, да читал я. Но fetch_assoc применим только не для подготовленных (not prepared) данных, а вот для prerared есть только fetch. И в коментах к этому методу, довольно необычный способ: как я понял получают названия столбцов, делают переменные с такими именами, а потом эти переменные испольуют как ключи итогового ассоативного массива.
только после всех этих трепонаций мне интересно prepared хоть выиграет что-нибудь у обычного запроса (если брать единичное обращение к БД)?
 

tf

крылья рулят
только после всех этих трепонаций мне интересно prepared хоть выиграет что-нибудь у обычного запроса (если брать единичное обращение к БД)?
создай еще одну тему по этому вопросу, мне самоу интересно
я так и не понял, оно создает два обращение к бд или одно
 

Alexandre

PHPПенсионер
только после всех этих трепонаций мне интересно prepared хоть выиграет что-нибудь у обычного запроса (если брать единичное обращение к БД)?
если брать единичное - то нет
если есть серия идентичных запросов, то препаред выиигрывает на времени компиляции запроса.
я так и не понял, оно создает два обращение к бд или одно
по одному обрпащению к БД на запрос.
 

BelStudent

целеустремлённый чел
Я так понял, чтобы получить максимальный эффект, нужно сохранять statement до следующего идентичного запроса где просто bind'yenm его с новыми перемеными.
Проблема в том, что я не знаю каким будет следующий запрос (всё зависит от действий пользователя) поэтому закрываю стейтменты сразу ($stmt->close()). Вот и получается на первый взгляд выгоды нет. А вот как на самом деле нужно тестировать. Если время будет, то обязательно затестирую свой сайт с 2 способами SQL запросов.
 

Фанат

oncle terrible
Команда форума
опять детский лепет про скорость

-~{}~ 29.07.09 23:41:

результаты тестов публикуй, пожалуйста, в каком-нибудь другом месте.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху