如何从 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中文网其他相关文章!