[英]How do I get a PHP query result into an array?
我知道這很容易,但我是一個菜鳥,不知道我在這里做錯了什么:
1: $mysqli = new mysqli('test', 'test', 'test', 'test');
2: if ($stmt = $mysqli->prepare($query)) {
3: if (!$stmt->execute()) {
4: $out .= "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
5: }
6: $out = $stmt->fetch_array();
7: } else {
8: $out .= $mysqli->error;
9: }
我收到Fatal error: Call to undefined method mysqli_stmt::fetch_array()
在第6行Fatal error: Call to undefined method mysqli_stmt::fetch_array()
錯誤。
如果你有PHP 5.3或更高版本,你可以使用mysqli_stmt::get_result()
,然后使用mysql_result::fetch_array()
:
$mysqli = new mysqli('test', 'test', 'test', 'test');
if ($stmt = $mysqli->prepare($query)) {
if (!$stmt->execute()) {
$out .= "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
$res = $stmt->get_result();
while ($out = $res->fetch_array()) {
}
else {
$out .= $mysqli->error;
}
此外,您可能想要查看所有MySQL-Improved文檔 。
您還可以使用mysqli_result::fetch_all()
一次獲取所有行。
好吧,在重新組合並嘗試完全不同的代碼之后(因為fetch只是不起作用,不知道為什么)我能夠使用這個來完成我的查詢功能:
function run_query($query)
{
$out = '';
$db = new PDO("mysql:host=test;dbname=test","test","test");
$out = $db->query("$query")->fetchAll(PDO::FETCH_OBJ);
return $out;
}
感謝大家的幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.