Home > Article > Backend Development > What to do if the content of the PHP download file is garbled
Solution to the garbled content of the PHP download file: 1. Clear the output buffer content through the "ob_clean()" function; 2. Refresh the PHP program's buffer through the "flush()" function.
#The operating environment of this article: Windows7 system, PHP7.1, Dell G3 computer.
Solution to the garbled and corrupted content of the downloaded file when downloading php files
When doing PHP programs, you need to use PHP to download files
Then Just do it, copy the code and change it.
Many effects have also appeared
After clicking download, well, I thought that the file download was completed. Who knew, when the picture was opened, it showed that the file was damaged, so I observed the size of the file. . It seems to be about 1KB too much.
Use PS to open it. Well, it prompts that it is damaged, but the image can come out.
Then I think it is the problem of the extra 1kb.
Then, I uploaded a txt and then downloaded it.
As expected, I found that there were a few extra characters in the front and back of the file.
Then I was thinking about how to remove it. I asked questions on various Baidu, Google, and forums.
Finally, after more than an hour of searching, I finally found a solution. [Recommended : "PHP Video Tutorial"】
The code is as follows
public function download() { $upload=M('upload'); $data=$upload->find($_GET['id']); if(empty($data)){ header('HTTP/1.0 404 Not Found'); header('Location: .'); }else{ $path='./public/Uploads/'.$data['savename']; header("Content-Type:".$data['type']); header('Content-Disposition: attachment; filename="'.$data['name'].'"'); header('Content-Length:'.$data['size']); ob_clean(); flush(); readfile($path); } }
Note:
ob_clean();
flush();This is the key. After using these two functions, it was done. The picture opened normally and the text was not garbled.
The above is the detailed content of What to do if the content of the PHP download file is garbled. For more information, please follow other related articles on the PHP Chinese website!