亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 MySQLi 和準備好的語句將一行選擇導出到 JSON

如何使用 MySQLi 和準備好的語句將一行選擇導出到 JSON

PHP
夢里花落0921 2022-01-14 16:39:30
我正在處理下面的代碼。如何以 JSON 格式導出一行的結果?我試過這樣$arr = [];$arr = $stmt->get_result()->fetch();但我收到此錯誤:未捕獲的錯誤:調用未定義的方法 mysqli_stmt::get_result()$stmt = $mysqli -> prepare('SELECT id, name, email, phone FROM users WHERE id = ?');$userId = 1; // or $_GET['userId'];$stmt -> bind_param('i', $userId);$stmt -> execute();$stmt -> store_result();$stmt -> bind_result($id, $name, $email, $phone);$stmt -> fetch();
查看完整描述

3 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

您必須使用非常舊的 PHP 版本,可能是 PHP 5.3。我強烈建議盡快升級到最新版本。


升級后,您可以使用以下內容。


$stmt = $mysqli->prepare('SELECT id, name, email, phone FROM users WHERE id = ?');

$userId = 1; // or $_GET['userId'];

$stmt->bind_param('i', $userId);

$stmt->execute();

$json = json_encode($stmt->get_result()->fetch_assoc());


查看完整回答
反對 回復 2022-01-14
?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

我在這里的 php 文檔中找到了一個有用的示例:https ://www.php.net/manual/en/mysqli-stmt.bind-result.php


基于該示例,這是我為您推薦的內容:


$results = array();

$stmt = $mysqli -> prepare('SELECT id, name, email, phone FROM users WHERE id = ?');

$userId = 1; // or $_GET['userId'];


$stmt -> bind_param('i', $userId);

$stmt -> execute();

$stmt -> bind_result($id, $name, $email, $phone);

while($stmt->fetch()){

    $results[] = array(

        "id"=>$id,

        "name"=>$name,

        "email"=>$email,

        "phone"=>$phone

    );

}

$stmt->close();

$output = json_encode($results);


查看完整回答
反對 回復 2022-01-14
?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

使用PDO:


$db = new PDO("mysql:host=$hostname;dbname=$dbname",$username,$password);


$sth = $db->prepare("SELECT id, name, email, phone FROM users WHERE id = ?");

$sth->execute([ $userId ]); // or $_GET['userId'];

$dbUser = $sth->fetch(PDO::FETCH_ASSOC);

echo json_encode($dbUser);


如果您的項目API使用:


header('Access-Control-Allow-Origin: *'); // For CORS

header('Content-Type: application/json');


查看完整回答
反對 回復 2022-01-14
  • 3 回答
  • 0 關注
  • 131 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號