0

次のスクリプトを使用して、PHP 経由でファイルをダウンロードしています。

header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename=sale.csv');
    header("Content-Transfer-Encoding: binary");
    header('Expires: 0');
    header('Pragma: no-cache');
    header("Content-Length: ".filesize($CSVFileName));
        readfile($CSVFileName);

$CSVFilename の値は "/home/demo/public_html/testwordpress/csv/sale.csv" です。 header("Content-type: text/csv"); も試しました。

どういうわけか、パスで指定された csv ファイルをダウンロードしていません。ページのソースコードをcsvでダウンロードしています。ここに私が得ているコードがあります:

<!DOCTYPE html>
<!--[if IE 6]>
<html id="ie6" lang="en-US">
<![endif]-->
<!--[if IE 7]>
<html id="ie7" lang="en-US">
<![endif]-->
<!--[if IE 8]>
<html id="ie8" lang="en-US">
<![endif]-->
<!--[if !(IE 6) | !(IE 7) | !(IE 8)  ]><!-->
<html lang="en-US">
<!--<![endif]-->
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width" />
<title>Call Details | Test</title>
<link rel="profile" href="http://gmpg.org/xfn/11" />

お知らせ下さい

4

2 に答える 2

1

私はここで私のロッカーから少し離れているかもしれません.

$file = "/home/demo/public_html/testwordpress/csv/sale.csv";
$contents = file_get_contents($file);

// Manipulate the contents however you wish.
$newFilePath = "somewhere/over/the/rainbow/sale.csv";
file_put_contents($newFilePath, $contents);
  • file_get_contents は、http ストリームでも機能します。
于 2013-09-06T16:44:14.770 に答える
0

私はこのようにしました:

<?PHP
    $filename= "yourfilepath.csv";

    header("Content-Disposition: attachment; filename=\"$filename\"");
    header("Content-Type: application/vnd.ms-excel");

    echo "your content to the .csv file";
?>
于 2013-09-06T15:48:02.000 に答える