我有 145064642 个字符长的 HTML 字符串,我正在尝试打印。
当我尝试对其进行 echo/var_dump/die 时,它会导致页面返回 false(0),但如果我尝试仅打印变量的一半,它工作正常。
例子:
不工作:
echo $MY_HTML_STR;
die($MY_HTML_STR);
var_dump($MY_HTML_STR)
这两行中的每一个都有效:
die(var_dump(substr($MY_HTML_STR,strlen($MY_HTML_STR)/2)));
die(var_dump(substr($MY_HTML_STR,0,strlen($MY_HTML_STR)/2)));
但是当尝试将两者一起打印时:
var_dump(substr($MY_HTML_STR,strlen($MY_HTML_STR)/2));
die(var_dump(substr($MY_HTML_STR,0,strlen($MY_HTML_STR)/2)));
它又崩溃了。
一种回显方式确实给了我一个错误:
echo <<<EOF
TEXTTEXT...
$MY_HTML_STR
BLABLAHTML...
EOF;
错误:Fatal error: Out of memory (allocated 324009984) (tried to allocate 145090561 bytes) in .....page.php on line 675
第 675 行是该EOF;
行。该脚本使用 WAMPSERVER 在我的家用计算机上运行,并且 memory_limit 设置为 -1(无限制)。