【问题标题】:Symfony 5 cache:clear php.CRITICAL: Fatal error: Allowed memory sizeSymfony 5 缓存:清除 php.CRITICAL:致命错误:允许的内存大小
【发布时间】: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

标签: php symfony symfony4 symfony5


【解决方案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。
  • 这不是解决方案,您只是完全消除了问题。为什么在清除某事时需要分配更多内存?这是你刚刚忽略的根本原因。
  • 这不是一个有效的答案,所以。没有提出永久的解决方案
猜你喜欢
  • 2015-04-22
  • 2023-03-20
  • 2015-09-18
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-14
  • 2017-12-13
相关资源
最近更新 更多