如何從PHP 腳本創建和下載CSV 文件
從PHP 數組創建和下載CSV 文件是一項有用的技術在網站上開發中。這是新手程式設計師的詳細指南:
建立CSV 檔案
範例:
$array = [ ['fs_id' => '4c524d8abfc6ef3b201f489c', 'name' => 'restaurant', ...], // More array elements... ]; $delimiter = ','; $csv = fopen('tmp.csv', 'w'); foreach ($array as $line) { fputcsv($csv, $line, $delimiter); }
下載CSV 檔案
header('Content-Disposition: attachment; filename="filename.csv"'); header('Content-Type: text/csv');
fseek($csv, 0); // Reset the file pointer to the start fpassthru($csv);
將它們放在一起
以下函數結合了這兩個步驟,並允許您從數組下載CSV 檔案:function array_to_csv_download($array, $filename = 'export.csv', $delimiter = ',') { // Set HTTP headers header('Content-Disposition: attachment; filename="' . $filename . '"'); header('Content-Type: text/csv'); // Create a file pointer $csv = fopen('php://memory', 'w'); // Loop through the array and create CSV lines foreach ($array as $line) { fputcsv($csv, $line, $delimiter); } // Send the generated CSV to the browser fpassthru($csv); }
用法:
$array = [ ['fs_id' => '4c524d8abfc6ef3b201f489c', 'name' => 'restaurant', ...], // More array elements... ]; array_to_csv_download($array, 'restaurants.csv'); // The CSV file will be downloaded to the user's computer.
附加說明:
作為使用php://memory 的替代方法,您也可以使用php://output檔案描述符,這對於大型資料集可能更有效。 此方法提供了一種從 PHP 陣列建立和下載 CSV 檔案的簡單方法,使其成為網站開發人員的寶貴工具。以上是如何從 PHP 陣列下載 CSV 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!