Dépannage de la modification upload_max_filesize en PHP
Lorsque vous rencontrez des incohérences entre les valeurs prévues et observées de upload_max_filesize, il est crucial d'enquêter sur les causes potentielles. Voici un examen plus approfondi du problème :
Code et comportement d'origine :
<?php
ini_set('upload_max_filesize', '10M');
echo ini_get('upload_max_filesize'), ", ", ini_get('post_max_size');
?>
Copier après la connexion
Lors de l'exécution, ce code affiche "2M, 8M" malgré le php.ini les paramètres étant :
upload_max_filesize = 10M
post_max_size = 10M
Copier après la connexion
Potentiel Causes :
-
Notation abrégée :
En PHP, l'utilisation de la notation abrégée pour les valeurs de configuration est limitée à PHP.ini lui-même. Tenter de définir des valeurs en utilisant cette notation en dehors de PHP.ini peut provoquer un comportement inattendu, tel que le retour aux valeurs par défaut.
-
Paramètre non pris en charge :
upload_max_filesize serait un paramètre PHP_INI_PERDIR, ce qui signifie qu'il ne peut pas être modifié à l'aide de ini_set(). La liste officielle des directives PHP le confirme.
Solution :
- Assurez-vous que PHP.ini contient les valeurs correctes pour upload_max_filesize et post_max_size.
- Utilisez des valeurs numériques au lieu de notations abrégées lors de la définition de ces valeurs dans PHP.ini.
- Redémarrez le serveur Web (par exemple, Apache) après avoir modifié PHP.ini pour vous assurer que les modifications prennent effet.
Une fois ces corrections effectuées, le code doit refléter le comportement attendu et autoriser le téléchargement de fichiers jusqu'à la limite spécifiée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!