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

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

將數組中的值替換為 mysqli_query 的結果

將數組中的值替換為 mysqli_query 的結果

PHP
交互式愛情 2024-01-19 14:48:56
我在 php 編碼方面遇到了一些問題。我想做的是:創建一個數組 ($rows) 并用 mysqli_query ($query1) 的結果填充它 --> OK對于該數組中的每個元素,將某個鍵 (pilot_rule_id) 的值替換為另一個 mysqli_query ($query2) 的結果。(第二個查詢將返回一行,因為 Pilot 表的 id 是主鍵)。到目前為止我已經$id = "96707ac6-ecae-11ea-878d-005056bbb446";$rows = array();$query1 = mysqli_query($con, "SELECT * FROM pilot_time_schedule WHERE pilot_id='$id'");while($r = mysqli_fetch_assoc($query1)) {    $rows[] = $r;}foreach($rows as $pilotRuleId) {    $pilotRuleId->$pilot_rule_id;    $query2 = mysqli_query($con, "SELECT name FROM pilot_rule WHERE id='$piloteRuleId'");    while($r = mysqli_fetch_assoc($query2)) {        $result[] = $r;    }// Don't know how to continue from here
查看完整描述

1 回答

?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

你可以這樣:


$id = "96707ac6-ecae-11ea-878d-005056bbb446";

$stmt = $con->prepare('SELECT * FROM pilot_time_schedule WHERE pilot_id=?');

$stmt->bind_param('s', $id);

$stmt->execute();

$rows = $stmt->get_result()->fetch_all(MYSQLI_ASSOC);


foreach ($rows as $row) {

    $stmt = $con->prepare('SELECT name FROM pilot_rule WHERE id=?');

    $stmt->bind_param('s', $row['pilot_rule_id']);

    $stmt->execute();

    // replace with the `name` returned from the above statement.

    $row['pilot_rule_id'] = $stmt->get_result()->fetch_row()[0] ?? null;

}

然而,您確實應該了解 SQL 連接。使用 SQL 連接,您可以避免對數據庫進行 N+1 查詢。


$id = "96707ac6-ecae-11ea-878d-005056bbb446";

$stmt = $con->prepare('SELECT pilot_time_schedule.*,  pilot_rule.name

    FROM pilot_time_schedule 

    JOIN pilot_rule ON pilot_rule.id=pilot_time_schedule.pilot_rule_id

    WHERE pilot_id=?');

$stmt->bind_param('s', $id);

$stmt->execute();

$rows = $stmt->get_result()->fetch_all(MYSQLI_ASSOC);


foreach ($rows as $row) {

    echo $row['name']; // contains the name from pilot_rule

}


查看完整回答
反對 回復 2024-01-19
  • 1 回答
  • 0 關注
  • 175 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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