С тех пор, как я перенес Symfony 2.1, у меня возникла проблема с WebProfilerBundle. Панель профилировщика отображается, но когда я нажимаю на ссылку, она показывает пустую страницу. В файле ошибок PHP показана следующая ошибка.
Неустранимая ошибка PHP: допустимый объем памяти 134217728 байт исчерпан (попытка выделить 4194304 байта) в C: \ Work \ Projects \ DirectpayLogin \ solution \ vendor \ symfony \ symfony \ src \ Symfony \ Component \ Stopwatch \ StopwatchEvent.php в строке 102
Местоположение ошибки является случайным. Так что не всегда StopwatchEvent.php.
Я сузил проблему до этого файла:
\ Поставщика \ Symfony \ Symfony \ SRC \ Symfony \ Bundle \ WebProfilerBundle \ Resources \ Views \ Profiler \ layout.html.twig
В этом шаблоне сервисные функции рендера веток вызывают проблему. Если я заменю сервис рендеринга контроллером рендеринга, он работает
Итак, я заменяю эту строку:
{{render (path (‘_ wdt’, {‘token’: token, ‘position’: ‘normal’}))}}
С этой строкой:
{% рендер контроллера (‘web_profiler.controller.profiler: toolbarAction’, {‘token’: token, ‘position’: ‘normal’})%}
Похоже, у моего Symfony есть проблема с отображением контроллеров как сервиса.
Но почему? Проблема началась с версии 2.2, и теперь я использую 2.7.
Установка моего php.ini memory_limit в -1 все равно выдаст эту ошибку. Это займет больше времени. Кажется, это какая-то петля.
Версия PHP 5.6 и мой ПК работает под управлением Windows 7 и IIS 7
Я действительно надеюсь, что кто-то может помочь мне с этим.
Задача ещё не решена.
Других решений пока нет …