2

ファイルをダウンロードできる次のスクリプト (関連する部分のみ):

if ($file = fopen($file, 'r'))
{
    if(isset($_SERVER['HTTP_RANGE']))
    {
        fseek($file, $range);
    } 
    while(!feof($file) && 
        (!connection_aborted()) && 
        ($bytes_send<$new_length))
    {
        $buffer = fread($file, $chunksize);
        print($buffer); //echo($buffer); // is also possible
        flush();
        $bytes_send += strlen($buffer);
    }
    fclose($file);
}

これを行うと、ダウンロードされたファイルには、実際の時間が作成時間として表示されます。

サーバー上にある最後の変更ファイルを保存する方法を知りたいです。

filemtime で情報を取得できることはわかっていますが、上記のスクリプトと組み合わせて使用​​する方法がわかりません。

4

1 に答える 1

0

出力を送信する前に、

header("Last-Modified: " . gmdate("D, d M Y H:i:s", filemtime($file)) . " GMT");

これにより、Web ブラウザーがその変更時刻でファイルをローカルに保存することはないと思います。そのためには、zip などの何らかのタイプのアーカイブ形式を使用する必要があると思います。

于 2012-06-04T15:49:11.663 に答える