Maison >développement back-end >tutoriel php >Pourquoi mon PHP `ini_set('upload_max_filesize')` ne fonctionne-t-il pas comme prévu ?

Pourquoi mon PHP `ini_set('upload_max_filesize')` ne fonctionne-t-il pas comme prévu ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-09 17:39:12987parcourir

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

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');
?>

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

Potentiel Causes :

  1. 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.
  2. 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn