首页 >后端开发 >php教程 >网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)

网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)

WBOY
WBOY原创
2016-06-23 13:28:482693浏览

出现问题:
[Thu Jul 09 09:57:22 2015] [error] [client 183.61.51.179] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 4294967296 bytes) in /vhost/vhostroot/wart8555/www/class/companyInfomation.php on line 80
[Thu Jul 09 09:57:48 2015] [error] [client 59.57.252.98] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 4294967296 bytes) in /vhost/vhostroot/wart8555/www/class/companyInfomation.php on line 80
[Thu Jul 09 09:57:50 2015] [error] [client 59.57.252.98] File does not exist: /vhost/vhostroot/wart8555/www/favicon.ico
[Thu Jul 09 10:01:38 2015] [error] [client 59.57.252.98] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 4294967296 bytes) in /vhost/vhostroot/wart8555/www/class/companyInfomation.php on line 80
首先index.php中引用foot.php页面,里面出现了问题,初学PHP,请大神帮忙看下

<?php  include 'include.php';include ROOT_PATH . '/tool/Page.php';include ROOT_PATH . '/tool/Database.php';include ROOT_PATH.'/class/baseProduct.php';include ROOT_PATH.'/class/baseInformation.php';//产品list$baseProduct = new BaseProduct();$productList = $baseProduct->indexShow();$information = new BaseInformation();$infor_list = $information->findPage(1, 5);?><!DOCTYPE html><head><title><?php echo WEB_TITLE;?></title><meta charset="UTF-8"><link rel="stylesheet" href="css/foundation.min.css"><link rel="stylesheet" href="css/superfish.css"><link rel="stylesheet" href="css/stylesheet.css"><link rel="stylesheet" href="js/slider/flexslider.css"><link rel="stylesheet" href="js/slider/flexcar.css"><link href='css/defult.css' rel='stylesheet' type='text/css'><script src="js/vendor/custom.modernizr.js"></script><script>Modernizr.load({    // test if browser understands media queries    test: Modernizr.mq('only all'),    // if not load ie8-grid    nope: 'css/ie8-grid-foundation-4.css'});</script><!--[if lt IE 9]><link rel="stylesheet" href="css/ie-fixes.css"><![endif]--></head><body><div class="header">  <?php include ROOT_PATH.'/top.php';?>  <div class="slider">      </div></div><div class="tagline">  <div class="row">    <div class="columns large-12">      <div class="center">		<div class="columns large-4 large-offset-1 content sidebar" id="youkuplayer" style="float: left; width: 370px;height: 241px; margin-left: 0"></div>		<script type="text/javascript" src="http://player.youku.com/jsapi">				player = new YKU.Player('youkuplayer',{				styleid: '0',				client_id: '9d672744e5e73950',				vid: 'XMTI3ODgyNjU4OA==',				autoplay: false,				show_related: false,				events:{					onPlayEnd: function(){ playVideo(); }					}				});				function playVideo(){					player.playVideo();					}			</script>		<div class="columns large-4 large-offset-1 content sidebar" style="float: left; margin-left: 10px;">        <h1 class="page-title services" style="font-size: 14px;text-align: left;cursor: pointer; " onclick="location.href='<?php echo ROOT_URL;?>/blog.php'">新闻</h1>        <ul>        <?php for($i=0;$i<count($infor_list);$i++){?>          <li class="bullet" style="text-align: left;"><a href="<?php echo ROOT_URL."/blog.php?id=".$infor_list[$i]["id"];?>"><?php echo $infor_list[$i]["title"].$infor_list[$i]["id"];?></a></li>        <?php }?>                  </ul>      </div>      <div></div>      </div>    </div>  </div></div><div class="service-box" style="display: none;">  <?php for($i=0;$i<count($productList);$i++){  		if($i==0){  			echo "<div class=\"row service\">";  		}elseif($i%3==0){  			echo "</div><div class=\"row service\">";  		}  		$picSrc = ROOT_URL.$productList[$i]["hostPath"]."/".$productList[$i]["saveName"];  ?>    <div class="columns large-4 sp">      <h1 class="service-subtitle sp_title"><?php echo $productList[$i]["title"];?></h1>      <p><img  src="<?php echo $picSrc;? alt="网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)" >" alt="" class="threeUp"></p>      <div> <?php echo $productList[$i]["littleContent"];?></div>      <p> <a class="button custom">详情</a> </p>    </div>  <?php if($i==count($productList)-1){  			echo "</div>";  		}  }?></div><div class="front-testimonial">  <div class="row">    <div class="columns large-12">      <div class="flexcar">          </div>  </div></div>  <?php include ROOT_PATH.'/foot.php';?><script src="js/jquery.min.js"></script><script src="js/hoverIntent.js"></script><script src="js/superfish.js"></script><script src="js/slider/jquery.flexslider.js"></script><script>Modernizr.load({    test: Modernizr.placeholder,    nope: 'js/placeholder.min.js'});function goToNewPage() {    if (document.getElementById('target').value) {        window.location.href = document.getElementById('target').value;    }}</script><script>$(document).ready(function () {    $('ul.sf-menu').superfish({        animation: {            height: 'show'        },        delay: 400    });    $("img.scrollToTop").click(function () {        $("html, body").animate({            scrollTop: 0        }, "slow");    });    $('.flexslider').flexslider();    $('.flexcar').flexslider();});</script></body></html>

<?phprequire_once 'include.php';require_once  ROOT_PATH.'/class/companyInfomation.php';$companyInfo_foot = new CompanyInfomation();$info_foot = $companyInfo_foot->getContent();?><footer class="footer">  <div class="row">    <div class="columns large-12 footer-inner">      <div class="row">        <div class="columns large-4 useful-links">          <div>            <h2 class="footer-title">Quick links</h2>            <ul class="footer-list">              <li><a href="#">伟达</a></li>              <li><a href="#">新闻</a></li>              <li><a href="#">产品</a></li>              <li><a href="#">视频</a></li>              <li><a href="#">下载</a></li>            </ul>          </div>        </div>        <div class="columns large-4 contact">          <div>            <h2 class="footer-title">Contactus</h2>            <ul class="footer-list">              <li><span class="small-icon"><img  src="<?php echo ROOT_URL;? alt="网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)" >/images/address.png" alt=""></span><?php echo $info_foot==null?"":$info_foot->getAddr();?></li>              <li><span class="small-icon"><img  src="<?php echo ROOT_URL;? alt="网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)" >/images/phone.png" alt=""></span><?php echo $info_foot==null?"":$info_foot->getTel();?></li>              <li><span class="small-icon"><img  src="<?php echo ROOT_URL;? alt="网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)" >/images/fax.png" alt=""></span><?php echo $info_foot==null?"":$info_foot->getFx();?></li>              <li><span class="small-icon"><img  src="<?php echo ROOT_URL;? alt="网站出现内存用尽(error: Allowed memory size of 134217728 bytes exhausted (tried to all)" >/images/email.png" alt=""></span><?php echo $info_foot==null?"":$info_foot->getEmail();?></li>            </ul>          </div>        </div>        <div class="columns large-4 about">          <div>            <h2 class="footer-title">Aboutus</h2>            <p><img src="images/about.png" alt=""></p>            <p>Placerat urna et tristique in! Scelerisque integer nisi pha sellus, nec phasellus arcualiquet etiam magna massa sit cursus adipiscing sed, nec? Aenean odio! Cumac dolor dapibus tincidunt lorem ipsum dolor sit esmet placerat urna et tristique in! Scelerisque integer nisi phasellus</p>          </div>        </div>      </div>    </div>  </div></footer><div class="credit-row">  <div class="row">    <div class="columns large-11 credit"></div>    <div class="columns large-1"> <img src="images/toparrow.png" alt="" class="scrollToTop"> </div>  </div></div>
<?phpclass CompanyInfomation{	private $id;	private $infomation;	private $addr;	private $tel;	private $fx;	private $email;		function setId($id){		$this->id = $id;	}	function getId(){		return $this->id;	}	function setInfomation($infomation){		$this->infomation = $infomation;	}	function getInfomation(){		return $this->infomation;	}	function setAddr($addr){		$this->addr = $addr;	}	function getAddr(){		return $this->addr;	}	function setTel($tel){		$this->tel = $tel;	}	function getTel(){		return $this->tel;	}	function setFx($fx){		$this->fx = $fx;	}	function getFx(){		return $this->fx;	}	function setEmail($email){		$this->email = $email;	}	function getEmail(){		return $this->email;	}		function edit(){		$select_sql = "select id from company_information where id = ?";		$insert_sql = "insert into company_information (information,addr,tel,fx,email)values(?,?,?,?,?)";		$update_sql = "update company_information set information = ?,addr=?,tel=?,fx=?,email=? where id=?";		$database = new Database();		$conn = $database->getConn();		$stmt = $conn->prepare($select_sql); 		$stmt->bind_param('i',$this->id); 		$stmt->execute(); 		$stmt->bind_result($id);				$stmt_edit = null;		if($stmt->fetch()){			$stmt_edit = $conn->prepare($update_sql); 			$stmt_edit->bind_param("sssssi",$this->infomation,$this->addr,$this->tel,$this->fx,$this->email,$this->id);			$stmt_edit->execute();		}else{			$stmt_edit = $conn->prepare($insert_sql);			$stmt_edit->bind_param("sssss",$this->infomation,$this->addr,$this->tel,$this->fx,$this->email);			$stmt_edit->execute();		}		$stmt->close();		$stmt_edit->close();		$conn->close();	}		function getContent(){		$select_sql = "select id,information,addr,tel,fx,email from company_information limit 0,1";		$database = new Database();		$conn = $database->getConn();		$stmt = $conn->prepare($select_sql); 		$stmt->execute();		$stmt->bind_result($id,$information,$addr,$tel,$fx,$email);		$infomation_obj = null;		if ($stmt->fetch())		{			$infomation_obj = new CompanyInfomation();			$infomation_obj->setAddr($addr);			$infomation_obj->setEmail($email);			$infomation_obj->setFx($fx);			$infomation_obj->setId($id);			$infomation_obj->setInfomation($information);			$infomation_obj->setTel($tel);		}		$stmt->close();		$conn->close();		return $infomation_obj;	}}?>


回复讨论(解决方案)

内存不足,在报错前那行,打印下所有变量、参数,是不是过大了。

哪个是 companyInfomation.php ?

看不出哪里需要 4G 的内存

没看到需要4G内存的地方。

哪个是 companyInfomation.php ?

看不出哪里需要 4G 的内存

最后一个是 

内存不足,在报错前那行,打印下所有变量、参数,是不是过大了。

第一个104行,第二个3-5行,第3个的80

没看到需要4G内存的地方。

数据库查询最多一条数据,没有数据也会报这样的错

虽然 bind_result 方法不需要参数变量事先存在,但是你还是先声明一下比较妥当
$id = $information = $addr = $tel = $fx = $email = ‘’;
$stmt->bind_result($id,$information,$addr,$tel,$fx,$email);

虽然 bind_result 方法不需要参数变量事先存在,但是你还是先声明一下比较妥当
$id = $information = $addr = $tel = $fx = $email = ‘’;
$stmt->bind_result($id,$information,$addr,$tel,$fx,$email);

还是不行

你试一下不用 bind_result 是怎样的

谢谢各位回答,字段类型设置错误,一个大文本字段设置成为最大字段,需要内存4G,换了就好了

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn