1
Я довольно новичок в php и mysql. Я пытаюсь создать rest api из php, и поскольку у моего сервера нет mysqlnd
, я должен использовать bind_result
и fetch
.PHP bind_result и выборка нескольких строк (массив)
$stmt = $this->conn->prepare("SELECT * from d WHERE d.id = ?");
$stmt->bind_param("i", 1);
if($stmt->execute()){
$stmt->bind_result($a, $b, $c);
$detail = array();
while($stmt->fetch()){
$detail["a"] = $a;
$detail["b"] = $b;
$detail["c"] = $c;
}
$stmt->close();
return $response;
} else {
return NULL;
}
Над кодом работает, но он может возвращать только одну строку информации за раз.
Например, если оператор возврата:
a b c
1 test test
1 test1 test1
он возвращает только
a: 1
b: test1
c: test1
, где его должны быть:
{
a: 1
b: test
c: test
},
{
a: 1
b: test1
c: test1
}
Вы замены '$ detail' на каждой итерации цикла. Вам нужно добавить через '$ detail [] [" a "] = $ a' и т. Д. –
Вы используете общий веб-хостинг или свою собственную коробку? Есть ли способ установить mysqlnd? – DarthCaniac