首頁 > 資料庫 > mysql教程 > 將資料提取到 CSV 檔案時,為什麼我的 PDO 準備語句會傳回雙結果?

將資料提取到 CSV 檔案時,為什麼我的 PDO 準備語句會傳回雙結果?

Patricia Arquette
發布: 2024-11-02 03:57:02
原創
575 人瀏覽過

Why is my PDO prepared statement returning double results when fetching data into a CSV file?

PDO 準備語句取得雙重結果

使用者遇到了一個問題,即將資料輸出到CSV 檔案。相關程式碼利用 $result_get_rows->fetch() 函數從資料庫中檢索行。

了解 Fetch() 方法

The fetch( ) PDOStatement 物件的方法用於從結果集中擷取行。預設情況下,它以索引數組(按列號)和關聯數組(按列名稱)的形式傳回行。

解決問題

修正雙重結果,建議使用 fetch() 方法的 fetch_style 參數指定如何傳回結果行。此參數接受下列常數之一:

  • PDO::FETCH_ASSOC:傳回以列名稱索引的關聯陣列。
  • PDO::FETCH_NUM:傳回按列索引的索引陣列number。
  • PDO::FETCH_BOTH(預設):傳回以列名和列號索引的陣列。

修改程式碼

透過使用PDO::FETCH_ASSOC,可以將程式碼修改如下:

<code class="php">while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_ASSOC)) {
  $csv .= '"'.join('","', str_replace('"', '""', $rows_get_rows))."\"\n";
}</code>
登入後複製

此修改將確保行程式碼修改如下:

此修改將確保行程式碼修改如下:此修改將確保行程式碼修改如下:此修改將確保行程式碼修改如下:此修改將確保行程式碼修改如下:此修改將確保行程式碼修改如下:此修改將可確保行程式碼修改如下以關聯數組的形式傳回,有效防止輸出到CSV檔案時值重複.

以上是將資料提取到 CSV 檔案時,為什麼我的 PDO 準備語句會傳回雙結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板