Was tun, wenn PHP keine großen Dateien herunterladen kann?

藏色散人
Freigeben: 2023-03-05 06:18:01
Original
2881 Leute haben es durchsucht

Lösung für das Problem, dass PHP keine großen Dateien herunterladen kann: Suchen und öffnen Sie dann die Datei „memory_limit“ auf 1024 MB; geben Sie dann die Daten an den Client-Browser aus.

Was tun, wenn PHP keine großen Dateien herunterladen kann?

Empfohlen: „PHP-Video-Tutorial

Lösung des Problems, dass mit PHP keine großen Dateien heruntergeladen werden können

In tatsächlichen Anwendungen gibt es eine Größenbeschränkung, wenn die fread()-Funktion von PHP verwendet wird Serverdateien lesen. Wenn die Dateigröße des Servers einen bestimmten Wert überschreitet (128 MB?), kann der Client-Browser die Datei nicht herunterladen. Liegt es am Memory_limit-Limit in der Konfigurationsdatei php.ini?

Nachdem ich das Memory_Limit auf 1024 MB gesetzt habe, habe ich eine 180 MB große Datei getestet und festgestellt, dass das Problem weiterhin besteht. Code:

header('content-type:application/octet-stream');
            header('accept-ranges: bytes');
            header('content-length: '.filesize($filePath));
            header('content-disposition:attachment;filename='.$fileName);
            $fp = fopen($filePath, "r");
            echo fread($fp, filesize($filePath));
            fclose($fp);
Nach dem Login kopieren

Die obige Lesemethode besteht darin, die Daten auf einmal an den Client-Browser auszugeben Es? Versuchen Sie, Zeile für Zeile aus der Datei zu lesen:

header('content-type:application/octet-stream');
            header('accept-ranges: bytes');
            header('content-length: '.filesize($filePath));
            header('content-disposition:attachment;filename='.$fileName);
            $fp = fopen($filePath, "r");
            while(!feof($fp)) {
                echo fgets($fp, 4096);
            }
           fclose($fp);
Nach dem Login kopieren

Aha! Kein Problem mehr.

Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP keine großen Dateien herunterladen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage