Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mit Datei-Uploads umgehen, die größer als PHPs „post_max_size' sind?

Wie kann ich mit Datei-Uploads umgehen, die größer als PHPs „post_max_size' sind?

Susan Sarandon
Susan SarandonOriginal
2024-11-19 10:02:02519Durchsuche

How Can I Handle File Uploads Larger Than PHP's `post_max_size`?

Umgang mit großen Datei-Uploads, die über PHPs post_max_size hinausgehen

Beim Umgang mit Datei-Uploads in PHP ist es wichtig, Situationen zu berücksichtigen, in denen die hochgeladene Datei die überschreitet Konfigurationsgrenzen des Servers. Während PHP Dateien, die kleiner als upload_max_filesize sind, ordnungsgemäß verarbeitet, stellt der Umgang mit Dateien, die größer als post_max_size sind, eine Herausforderung dar.

Um Dateien zu erkennen, die größer als post_max_size sind, was dazu führen kann, dass Skripte stillschweigend fehlschlagen, bietet PHP keinen einfachen Fehlermechanismus. Es gibt jedoch Möglichkeiten, diese Einschränkung zu umgehen.

Leere $_POST- und $_FILES-Arrays

Gemäß der offiziellen Dokumentation, wenn die Größe der veröffentlichten Daten post_max_size überschreitet , werden sowohl die Superglobals $_POST als auch $_FILES leer. Indem Sie dieses Verhalten nutzen, können Sie Ihr Skript ändern, um nach einer Formularübermittlung nach leeren Arrays zu suchen.

Vergleich von CONTENT_LENGTH mit post_max_size

Ein alternativer Ansatz besteht darin, den Wert von zu vergleichen $_SERVER['CONTENT_LENGTH'] mit post_max_size. CONTENT_LENGTH umfasst die Größe der hochgeladenen Datei, der Beitragsdaten und der mehrteiligen Sequenzen. Wenn CONTENT_LENGTH post_max_size überschreitet, ist Ihre Datei wahrscheinlich zu groß.

Durch die Integration dieser Techniken können Sie Dateien, die PHPs post_max_size überschreiten, problemlos verarbeiten und verhindern, dass Ihre Skripte stillschweigend fehlschlagen oder leere Formulare zurückgeben.

Das obige ist der detaillierte Inhalt vonWie kann ich mit Datei-Uploads umgehen, die größer als PHPs „post_max_size' sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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