编码时昨天开始发生了一些非常奇怪的事情。
我正在测试一个新功能,一切都很顺利。没有问题。每次都在屏幕上构建json对象和print_r,以检查测试方法中对象的成功构建。
当我在代码库中实现它时,它仍然可以正常工作。然后我去改变一种不同的方法,更新代码以使用这种新方法并测试它的相关屏幕,所有工作都很好。
然后在页面上重新加载(看到一切正常后),我收到了PHP内存泄漏错误。
致命错误:在第901行的D:\ public_html \ genesis \ system \ core \ Common.php中,允许的内存大小为1342177280字节(试图分配65488字节)
无论我隔离什么,都会发生这种情况。
我甚至将索引页面转换为:
public function index() {
echo 'Hello World';
//$this->buildPage("login");
}
它仍然会抛出错误。
我目前有这个用于内存限制:
memory_limit=2480M
那是在1280,然后我又增加了1200,但仍然没有区别。
我的其他网站正在加载,只是这个。但我似乎无法解决它,因为我无法获得任何方法来加载。
还有其他人有这个问题吗?
关于如何弄明白的任何想法?
答案 0 :(得分:3)
好的,所以我弄清楚了,这就是我做了什么以及发生了什么。
1)首先我必须安装xDebug。 (https://xdebug.org/wizard.php)
2)然后我可以在尝试加载页面时看到错误。
我在Codeigniter中达到了允许的最大嵌套限制。这是因为在模型中加载模型并再次加载。我没有意识到不允许交叉模型使用。
所以我将基于类的构造加载主要模型移动到autoload.php文件。
这让事情再次加载。