在 PHP 中將陣列轉換為 CSV 檔案可能會很痛苦。如果您一直在努力產生格式正確的 CSV,本文將提供更好的解決方案。
考慮以下程式碼:
<code class="php">$prods = [1, 2, 3]; foreach ($prods as $prod) { $sql = "SELECT * FROM products WHERE id = '$prod'"; $result = $mysqli->query($sql); $info = $result->fetch_array(); } // ... rest of the code</code>
此程式碼可能會產生一個長行的CSV 文件,而不是帶有標題和換行符的所需格式。
要解決此問題,請將寫入CSV 檔案的程式碼替換為以下內容:
<code class="php">$output = fopen("php://output",'w') or die("Can't open php://output"); header("Content-Type:application/csv"); header("Content-Disposition:attachment;filename=pressurecsv.csv"); fputcsv($output, array('id','name','description')); foreach($prod as $product) { fputcsv($output, $product); } fclose($output) or die("Can't close php://output");</code>
fputcsv() 函數自動處理轉義、欄位分隔符號和行結尾,確保CSV 格式正確.
以上是如何將 PHP 陣列轉換為帶有標題的格式正確的 CSV 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!