尝试使用 Symfony2 项目清除缓存时出错


Error when trying to clear cache with a Symfony2 project

当我尝试清除缓存时:

php app/console cache:clear --env=prod --no-debug

我收到此错误:

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 4304 bytes) in MyProject/vendor/symfony/symfony/src/Symfony/Component/Filesystem/Filesystem.php on line 132

它发生在我上次更新以来。我只是添加了一些更改,我做到了:

git pull
php app/console assets:install web
php app/console assetic:dump --env=prod --no-debug

然后尝试清除缓存。

我能做些什么来解决这个问题?

您应该尝试在用于 CLI 的php.ini中增加内存限制(命令行界面 )。

看起来 PHP 在cache:clear过程中吃的比允许的128M多。

该指令memory_limit - 尝试:

memory_limit = 256M

php.ini您可以使用...

php -i | grep ini       (*nix)
php -i | findstr ini    (windows cmd)

。如果您的 CLI 使用与 Web 应用程序相同的php.ini - 您也可以创建一个包含内容的文件并通过您的 Web 服务器访问它:

<?php
phpinfo();

。或者最简单的方法可能是单击symfony的Web工具栏中的PHP徽标并注意Loaded Configuration File(仅当cli不使用其他php.ini时)。