PHP 7.3 / print_r ($ GLOBALS) вызывает «Неустранимая ошибка: допустимый объем памяти» - PullRequest
0 голосов
/ 02 января 2019

Мы только что обновились до PHP 7.3 и испытываем странное поведение.

Когда я пытаюсь запустить следующий код, PHP вылетает с сообщением об ошибке

Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 534777856 bytes) in /............./test.php on line 2

Код:

<?php
print_r($GLOBALS);
?>

Как видите, это действительно простой скрипт с одной строкой кода. var_export работает и правильно показывает содержимое. Увеличение лимита памяти только задерживает сбой. В PHP 5.6 он работает как положено.

Кто-нибудь из вас испытывал такое же поведение в PHP 7.3? Есть ли у вас какие-либо советы, кроме использования print_r?

Спасибо

PS: это правильный вывод var_export, поэтому $ GLOBALS действительно далек от того, чтобы быть таким большим, как было предложено в сообщении об ошибке:

array(5) { ["_GET"]=> array(0) { } ["_POST"]=> array(0) { } ["_COOKIE"]=> array(3) { ["xxxx_username"]=> string(4) "xxxx" ["printcounter"]=> string(1) "4" ["PHPSESSID"]=> string(32) "793b64887bb8b857515748bbb3d7c5cb" } ["_FILES"]=> array(0) { } ["GLOBALS"]=> array(5) { ["_GET"]=> array(0) { } ["_POST"]=> array(0) { } ["_COOKIE"]=> array(3) { ["xxxx_username"]=> string(4) "xxxx" ["printcounter"]=> string(1) "4" ["PHPSESSID"]=> string(32) "793b64887bb8b857515748bbb3d7c5cb" } ["_FILES"]=> array(0) { } ["GLOBALS"]=> *RECURSION* } } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...