Heim >Backend-Entwicklung >PHP-Tutorial >Warum funktioniert mein PHP `ini_set('upload_max_filesize')` nicht wie erwartet?

Warum funktioniert mein PHP `ini_set('upload_max_filesize')` nicht wie erwartet?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-09 17:39:12983Durchsuche

Why Doesn't My PHP `ini_set('upload_max_filesize')` Work as Expected?

Fehlerbehebung bei der Änderung von upload_max_filesize in PHP

Wenn Sie auf Inkonsistenzen zwischen den beabsichtigten und beobachteten Werten von upload_max_filesize stoßen, ist es wichtig, mögliche Ursachen zu untersuchen. Hier ist eine genauere Untersuchung des Problems:

Originalcode und Verhalten:

<?php
ini_set('upload_max_filesize', '10M');
echo ini_get('upload_max_filesize'), ", ", ini_get('post_max_size');
?>

Bei der Ausführung gibt dieser Code trotz der php.ini „2M, 8M“ aus Einstellungen sind:

upload_max_filesize = 10M
post_max_size = 10M

Potenziell Ursachen:

  1. Kurzschreibweise:
    In PHP ist die Verwendung der Kurzschreibweise für Konfigurationswerte auf PHP.ini selbst beschränkt. Der Versuch, Werte mit dieser Notation außerhalb von PHP.ini festzulegen, kann zu unerwartetem Verhalten führen, z. B. zum Zurückgreifen auf Standardwerte.
  2. Nicht unterstützte Einstellung:
    upload_max_filesize ist angeblich eine PHP_INI_PERDIR-Einstellung. Das heißt, es kann nicht mit ini_set() geändert werden. Die offizielle Liste der PHP-Anweisungen bestätigt dies.

Lösung:

  • Stellen Sie sicher, dass PHP.ini die richtigen Werte für upload_max_filesize und post_max_size enthält.
  • Verwenden Sie beim Eingeben dieser Werte numerische Werte anstelle der Kurzschreibweise PHP.ini.
  • Starten Sie den Webserver (z. B. Apache) neu, nachdem Sie PHP.ini geändert haben, um sicherzustellen, dass die Änderungen wirksam werden.

Sobald diese Korrekturen vorgenommen wurden, sollte der Code angezeigt werden das erwartete Verhalten und ermöglichen Datei-Uploads bis zum angegebenen Limit.

Das obige ist der detaillierte Inhalt vonWarum funktioniert mein PHP `ini_set('upload_max_filesize')` nicht wie erwartet?. 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