致命错误:允许的内存大小 134217728 字节已耗尽(尝试分配 523800 字节)/Library/WebServer/Documents/XMLDataStore.class.php在线的981
这个错误的奇怪之处不是内存泄漏,这很容易排除故障。事实上,XMLDataStore.class.php 只有 850 行长,我已经在多个文本编辑器中验证了这一点。
这是与 Snow Leopard 捆绑在一起的 PHP 5.3。我没有使用操作码缓存。这是我的 php.ini:
allow_url_fopen = Off
error_reporting = -1
display_errors = 1
display_startup_errors = 1
date.timezone = 'America/Los_Angeles'
output_buffering = Off
realpath_cache_size = 0k
XMLDataStore.class.php 最近被重构,它的长度超过了 981 行。这几乎就像 PHP 缓存了两周前的版本并正在读取它一样。不过,我确信 /Library/WebServer/Documents/XMLDataStore.class.php 的当前版本只有 850 行长。
这可能是换行问题吗?即 PHP 解释器的换行方式与 IDE/编辑器不同?我不知道 PHP 如何处理 Linux/Mac/Windows 换行符,但这可能是一种可能性。
您可以在脚本中的某个位置创建一个致命错误,然后查看它显示的行号吗?
您的代码中是否存在一些过长的行(> 65535 个字符),从而混淆了行计数?
另外,如果您重命名该文件并将其包含在新名称下会发生什么情况?这应该可以解决任何搞砸的缓存问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)