Erreur de mémoire dans symfony
je travaille actuellement sur Symfony project (const VERSION = '2.5.10') et j'utilise xampp. La version de PHP est 5.5.19.
Mon problème est que à chaque fois que je lance mon environnement de dev, j'obtiens une erreur :
OutOfMemoryException: erreur: Taille de mémoire autorisée de 1073741824 octets épuisés (essayé d'allouer 3358976 octets) en C:xampphtdocsEditrackervendorsymfonysymfonysrcSymfonyComponentHttpKernelProfilerFileProfilerStorage.php ligne 153
et chaque fois que je rafraîchis la page il donne la taille de la mémoire différente. Je pense aussi que c'est aussi la raison pour laquelle mon environnement dev prend un temps considérable avant de rafraîchir la page.
votre aide est appréciée.
php.ini
memory_limit= '256'
j'ai essayé d'augmenter ma limite de mémoire, mais ça donne une erreur sur la limite de mémoire
4 réponses
la composante la plus pressante de Symfony est un profileur. Si vous n'avez pas besoin de profiler dans certaines actions particulières, vous pouvez le désactiver via le code:
if ($this->container->has('profiler'))
{
$this->container->get('profiler')->disable();
}
framework:
profiler:
collect: false
soit vous désactivez Symfony profiler (Je ne pense pas que ce soit ce que vous voulez pour autant que je sache) ou mettez la limite À illimité avec -1
dans votre php.ini et redémarrez apache.
memory_limit = -1
si la limite de mémoire n'est atteinte que sous L'environnement Dev Symfony, je suggère d'ajouter ce qui suit à web/app_dev.php
ini_set('memory_limit', '-1');
de cette façon vous pouvez continuer à tester la production avec une quantité raisonnable de mémoire. Modifier l'environnement entier via php.ini pourrait masquer une erreur en bas de la ligne.
j'ai résolu l'erreur de mémoire sur le débogueur Twig en installant le XDebug.
parce que la brindille utilise le PHP var_dump
fonction interne, installer le XDebug est une bonne idée, car il limite le var_dump()
sortie de tableaux et d'objets à 3 niveaux de profondeur, comme nous pouvons le voir sur le documentation.
Crédits @peezi.