Здравствуйте коллеги. В результате PHP: $stmt->bind_result($prizn2,$prizn3,$prizn4,$prizn5); я привязываю результаты запроса к соответствующим переменным. Затем с помощью, например PHP: while($stmt->fetch()){ /..... } получаю значения этих самых переменных. В связи с этим вопросы: 1) Как так получается, что привязка идет к переменной, а выборка вроде как из массива? Т.е., что это за переменная такая, которая содержит значения, точно так же как и массив? 2) Как получить доступ к этой переменной по значению ключа? Напр. $prizn2[3]. 3) Возможно ли данные переменные "пересохранить" в массив и отправить их из функции Return-ом? P.S. В принципе ответ на 3) вопрос я додумаю, если получу ответ на первые 2. Спасибо.
по роману специфики драйвера пройдясь через жопу(1), сегодня им выеживался в проекте драйверов. надо самому писать цикл заносящий все в массив, не как в PDO юзнул fetchAll и готовь попкорн. Через селезнку прошел(2). мона. фантазии онлайн вплоть до велосипедов --- Добавлено --- кому надо в будущем тоже опишу PHP: call_user_func_array ( [ $stmt, 'bind_result' ], $args = [ &$a, &$b, .... ] );
PDO все таки прикольнее)) хотя я забыл уже когда использовал или mysql(i) или PDO как то все проекты используют свои методы-надстройки для работы с базой)
@Abyss, свою реализацию так назвал PHP: $a = require ( 'mysqli.php' ); $q = $a -> load( 'SELECT username FROM table' ); var_dump ( $q -> fetch(2), $q -> fetch(2) ); Lerma будет соединять запрос с типом бд( Migrate ) и драйвера ( pdo or mysqli )
@MouseZver Попробовал PHP: call_user_func_array ([$stmt,'bind_result'],$args = [&$prizn2,&$prizn3,&$prizn4,&$prizn5] ); Выдает ошибку Код (Text): Parse error: syntax error, unexpected '[', expecting ')' Что я делаю не так?
учиться читать ошибки с номером строки. Если вы не сможете в дальнейшем разбираться с проблемой по выдаче таких PHP: Parse error: syntax error, unexpected '[', expecting ')' ... line 54754545 то умрите. --- Добавлено --- call_user_func_array Функция для меня устарела. есть более новый подход PHP: $stmt -> bind_param( ...$args );