ThinkPHP提示错误Fatal error: Allowed memory size的解决方

如果你的ThinkPHP提示你:致命错误Fatal error: Allowed memory size),根据网上说的提高服务器可使用内存,我觉得都不是好的解决办法。麻烦也没必要。因为这是ThinkPHP本身存在BUG。

错误提示Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 523800 bytes) in  /var/www/www.example.com/ThinkPHP/Lib/Template/ThinkTemplate.class.php on line 265。

如果你的错误提示跟我的一样,也是告诉你ThinkTemplate.class.php这个文件中出错,那就是它在解析自己的标签include或其他标签时出现了死循环,导致服务器内存不够这个死循环用。

解决方法:

1、找到问题源。在出现错误(Fatal error: Allowed memory size)的模版页中,找到你使用到的ThinkPHP的标签(include/if/empty等),逐个删除测试,看是哪个标签造成的;

2、将你使用的这种标签换成原生的PHP,如:

复制代码 代码如下:

<!--我的错误是因为 include 造成的-->
<include file="./Public/home/js/Company/companyJS.html" />
<!--换成-->
<php>include './Public/home/js/Company/companyJS.html';</php>

如果是因为empty,可以参照上面:

复制代码 代码如下:

<php>
if(empty($a)){
    echo 'a为空'
}
</php>


至此问题解决!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/65cdb0fb1264159e210edd16581343e3.html