簡體   English   中英

從查詢結果到關聯數組Codeigniter

[英]From Query Result to Associative Array Codeigniter

我正在編寫一個新類來處理我的數據庫,我真的很想實現一些我在編程時通常會做的自定義功能。 這些功能之一是可以從查詢兩個字段中獲取內容,如下所示:

SELECT brandId,brandName FROM Brands;

並得到一個關聯數組,索引為my brandId ,值brandName

到目前為止,這是我嘗試過的操作,但應用程序似乎卡住了,無法產生任何錯誤消息,只是無法完成的加載

function getColHash($query){
    $output = array();
    while ($result = $this->query($query)->result()) {
        $output[$result[0]] = $result[1];

    }
    return $output;
  }

一些提示將不勝感激

$result = $this->query($query)->result(); 執行查詢並將所有結果提取到$result 只要查詢返回任何行,在類似while的循環條件下執行該語句都是無限的。

您可以先獲取結果,然后對其進行迭代以生成輸出。 另外, 看起來result()返回一個對象數組 ,所以您可能需要result_array()代替。

$results = $this->query($query)->result_array();

foreach ($results as $result) {
    $output[$result[0]] = $result[1];
}

我不確定Codeigniter是否返回帶有數字索引和字符串索引的結果數組,因此在引用$result[0]$result[1]之前,可能需要設置$result = array_values($result)

我建議您使用:

$result = $this->db->query($query);

然后執行:

foreach ($result->result() as $row) {
   echo $row->brandId;
}

您可以閱讀文檔以獲取有關查詢結果的更多信息。

此處的文檔: https : //www.codeigniter.com/user_guide/database/results.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM