0

1.csv2.csvの2 つのファイルがあります。既知の方法で PHP を使用して1.csvをダウンロードできます。

$file = '1.csv';
header('Content-Description: File Transfer');
header('Content-Type: application/jpeg');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: public');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);

しかし、私の目的は、両方のファイル ( 1.csv2.csv ) のダウンロード ファイル コンテンツを含めることです。これを実装する方法について誰かアイデアがありますか? 前もって感謝します。

4

2 に答える 2

2

私があなたを正しく理解しているなら、これはそれをするべきです。

$file1 = '1.csv';
$file2 = '2.csv';
header('Content-Description: File Transfer');
header('Content-Type: text/comma-separated-values');
header('Content-Disposition: attachment; filename='.basename($file1, '.csv') . '-'  . basename($file2, '.csv') . '.csv');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: public');
header('Pragma: public');
header('Content-Length: ' . (filesize($file1) + filesize($file2)));
ob_clean();
flush();
readfile($file1);
readfile($file2);

複数のファイルにループを使用することを検討し、CSVファイルのContent-Typeヘッダーの変更に注意してください。

于 2012-07-15T11:33:27.947 に答える
1
$file1 = '1.csv';
$file2 = '2.csv';
header('Content-Description: File Transfer');
header('Content-Type: application/jpeg');
header('Content-Disposition: attachment; filename="1-2.csv"');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: public');
header('Pragma: public');
header('Content-Length: ' . (filesize($file1)+filesize($file2)));
ob_clean();
flush();
echo file_get_contents($file1).file_get_contents($file2);

2 つのファイル コンテンツの連結をダウンロードします

于 2012-07-15T11:28:11.820 に答える