我生成一個文件來呈現給用戶下載,但服務器並沒有讓我打開它,因爲它需要有權限777之前,它可以這樣做。在PHP中強制下載之前設置文件權限?
這裏是我的代碼
$fh = fopen("$name", 'w') or die("can't open file");
fwrite($fh, $data);
fclose($fh);
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Length: ". filesize("$name").";");
header("Content-Disposition: attachment; filename=$name");
header("Content-Type: application/octet-stream; ");
header("Content-Transfer-Encoding: binary");
readfile($name);
任何方式之前,我打開它之前設置的這個權限,或如何將我去這樣做?該文件還沒有創建,所以它可能是一個無限循環。我應該製作文件,然後打開它,或者是什麼?
爲什麼不直接使用'echo $ data'?或者你還需要該文件還有其他的東西? – 2009-10-28 17:38:01
Lukas Lalinsky是對的。你應該在你的頭文件後將數據發送給用戶。它不會將它寫入您的服務器以保存您的硬盤。 – elviejo79 2009-10-28 17:40:09