將PHP 陣列轉換為CSV 檔案
將產品陣列轉換為CSV 檔案可能是一個簡單的過程,但如果檔案最終會成為單行長行,或如果標頭未啟動下載。
單行問題的一種解決方案是利用 fputcsv() 函數,而不是手動寫出值。透過使用 fputcsv(),您可以輕鬆地將資料格式化為 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>
另一個潛在的問題是確保標頭強制下載。為此,請將以下標頭添加到您的 PHP 腳本中:
<code class="php">[...] header("Content-type: application/octet-stream"); header("Content-Disposition: attachment; filename=your_desired_name.xls"); [...]</code>
透過合併這些修改,您的 PHP 腳本現在應該會成功將產品數組轉換為 CSV 文件,標頭提示下載。
以上是如何克服將 PHP 陣列轉換為 CSV 檔案時出現的錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!