Umgang mit Datei-Uploads, die PHPs post_max_size überschreiten
Beim Umgang mit Datei-Uploads mit PHP kann das Überschreiten des post_max_size-Limits eine Herausforderung darstellen. Im Gegensatz zu upload_max_filesize, das für übergroße Dateien eine Dateigröße von 0 zurückgibt, kann post_max_size dazu führen, dass Ihr Skript stillschweigend und ohne Fehlermeldung fehlschlägt.
So erkennen Sie Fehler bei der Dateigrößenbeschränkung
1. Auf leere Superglobals prüfen:
Laut der PHP-Dokumentation sind die Superglobals $_POST und $_FILES leer, wenn die Post-Daten post_max_size überschreiten. Sie können dies erkennen, indem Sie einen Abfrageparameter an das Formular übergeben, der nur gesetzt wird, wenn $_POST nicht leer ist.
if (isset($_GET['processed'])) { // Perform file upload processing } else { // Display blank form }
2. Vergleichen Sie mit $_SERVER['CONTENT_LENGTH']:
Ein anderer Ansatz besteht darin, den CONTENT_LENGTH-Header, der nicht nur die Dateidaten, sondern auch mehrteilige Sequenzen enthält, mit der Einstellung post_max_size zu vergleichen.
if ($_SERVER['CONTENT_LENGTH'] > ini_get('post_max_size')) { // Error handling for oversized file }
Hinweis: Mit diesen Methoden können Sie übergroße Dateien erkennen, ohne dass PHP einen Fehler generiert. Es ist jedoch wichtig, diese Einstellungen in Ihrer php.ini-Datei anzupassen, um mögliche Sicherheitsprobleme oder Leistungseinbußen aufgrund großer Dateien zu verhindern.
Das obige ist der detaillierte Inhalt vonWie erkennt man, wenn Datei-Uploads das „post_max_size'-Limit von PHP überschreiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!