Allowed memory size of 67108864 bytes exhausted (tried to allocate 19200 octets)
Je suis en train de télécharger une image de 10 mo taille et il me donne l'erreur:
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to
allouer 19200 octets)
J'ai aussi essayé de changer dans .fichier ini en y apportant des modifications comme:
upload_max_filesize = 70M
post_max_size = 20M
Mais il ne fonctionne toujours pas... et me donne le même message d'erreur... c'est tellement frustating que puis-je faire la prochaine...
Ce que je fais de mal avec mon code, Comment puis-je résoudre ce problème?
Merci tout le corps pour l'aide, j'ai réussi la question... 🙂
OriginalL'auteur Ankita Gupta | 2011-09-10
Vous devez vous connecter pour publier un commentaire.
S'il vous plaît essayer:
la fonction ini_set("memory_limit","100M");
OriginalL'auteur renato
C'est du PHP qui est à court de mémoire. Vous aurez besoin de l'memory_limit option dans votre php.ini, ou utiliser la fonction ini_set dans votre PHP (en supposant qu'il est activé).
OriginalL'auteur Jonnix
Vous avez actuellement une limite de mémoire de
64M
(c'est ce que le message est en train d'essayer de vous le dire), ce qui est beaucoup plus grand que l'10 méga-octets de l'image. Vous avez probablement un problème ailleurs (inefficace script, boucle infinie, une récursion infinie?).OriginalL'auteur NikiC
Ne lisez pas votre fichier dans la mémoire. Vous êtes à l'aide de plus de 64 MO dans votre script qui est bien plus que les 10 MO à partir de l'image, de sorte que vous êtes susceptible de la lecture du fichier et le copier autour et de faire d'autres inefficaces choses. (Nous ne pouvons que deviner, sans voir votre code.)
Il suffit de copier le fichier directement à partir de son emplacement temporaire dans son nouvel emplacement désiré avec les opérations de système de fichiers (tels que
move_uploaded_file
).Si vous avez certainement un besoin de 64 mo pour une raison autre que le simple téléchargement d'une image — dire, peut-être vous effectuez complexe et coûteuse manipulations sur elle — alors vous pouvez changer le
memory_limit
option INI. Mais ce devrait être un dernier recours par rapport à la fixation de votre code. 🙂OriginalL'auteur Lightness Races in Orbit
Votre PHP couru hors de la mémoire. Au lieu de lever les limites de la mémoire, vous devriez sérieusement penser si vous pouviez enchanter votre script, de sorte qu'il prend moins de mémoire. Par exemple, au lieu de lire le fichier téléchargé dans la mémoire, l'utilisation seule du système de fichiers actions.
OriginalL'auteur Smar
Syntaxe correcte à utiliser dans votre php.ini:
Vous pouvez également essayer de modifier votre script pour prendre moins de mémoire
OriginalL'auteur Benjamin Crouzier
Vous devriez au moins permuter les valeurs que vous avez pour "post_max_size" (maximum pour l'ensemble du post) et "upload_max_filesize" (maximum pour chaque fichier)
OriginalL'auteur xtianjs