Symfony 5 缓存:清除 php.CRITICAL:致命错误:允许的内存大小
Posted
技术标签:
【中文标题】Symfony 5 缓存:清除 php.CRITICAL:致命错误:允许的内存大小【英文标题】:Symfony 5 cache:clear php.CRITICAL: Fatal error: Allowed memory size 【发布时间】:2020-04-24 04:53:13 【问题描述】:我在尝试使用 Symfony 5 时遇到以下错误
bin/console cache:clear
我知道如何修补 (memory_limit=-1),但我想知道为什么会出现此错误。
错误:
php 致命错误:允许的内存大小为 134217728 字节已用尽 (试图分配 32230840 字节) 在 /Applications/MAMP/htdocs/Toile./vendor/twig/twig/src/Lexer.php 第 157 行
15:50:13 CRITICAL [php] 致命错误:允许的内存大小为 134217728 字节已用尽(尝试分配 32230840 字节)
[ "exception" => Symfony\Component\ErrorHandler\Error\OutOfMemoryError -error: [ "type" => 1, "message" => "Allowed memory size of 134217728 bytes exhausted (tried to allocate 32230840 bytes)", "file" => "/Applications/MAMP/htdocs/Toile./vendor/twig/twig/src/Lexer.php", "line" => 157 ] #message: "Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32230840 bytes)" #code: 0 #file: "./vendor/twig/twig/src/Lexer.php" #line: 157 ]
在 Lexer.php 第 157 行:错误:允许的内存大小为 134217728 字节 用尽(试图分配 32230840 字节)
我无法追踪此错误的来源。
我从我的项目中删除了所有树枝模板,我手动清除了缓存但什么也没有......有什么想法吗?
谢谢
【问题讨论】:
如果它占用了太多内存,因为它占用了太多内存,所以除了增加 php.ini 中的限制或通过命令行(例如)之外,您无能为力。php -dmemory_limit=1G bin/console ca:cl
谢谢,我将 php.ini 中的限制增加到 256MO
【参考方案1】:
看起来bin/console cache:clear
命令占用了大量内存。我不认为这是因为树枝文件。
设置memory_limit=-1
有点像禁用内存限制,意味着提供无限的内存来运行 PHP。请检查您的 php.ini 文件并调整 memory_limit。
请注意,您可能有 2 个用于 PHP 的 php.ini 文件,一个用于 Web,一个用于命令行。使用php -i
查看加载的ini文件。
使用此命令php -i | grep 'Configuration'
grep 命令行的输出。
【讨论】:
谢谢,我已经这样做了,但我想要一个更好的解决方案。我终于把 php.ini 的 memory_limit 增加到了 256MB。 这不是解决方案,您只是完全消除了问题。为什么在清除某事时需要分配更多内存?这是你刚刚忽略的根本原因。 这不是一个有效的答案,所以。没有提出永久的解决方案以上是关于Symfony 5 缓存:清除 php.CRITICAL:致命错误:允许的内存大小的主要内容,如果未能解决你的问题,请参考以下文章