100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 7 php 内存泄漏_php 大数组导致内存泄露问题

7 php 内存泄漏_php 大数组导致内存泄露问题

时间:2019-08-24 15:40:59

相关推荐

7 php 内存泄漏_php 大数组导致内存泄露问题

错误提示:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes) in /Applications/XAMPP/xamppfiles/htdocs/VIP/App/Home/Controller/IndexController.class.php on line 42

处理数组的方法:/**

*算法:非常重要-会导致内存溢出-需要更换一种思路解决内存溢出的问题?

*

*根据安置人的位置,安置人的层级和当前用户的层级计算区域奖对应的

*会员位置集合数组

*@paramstring$rehousepos安置人位置pos

*@paramstring$rehousefloor安置人层级floor

*@paramstring$currentfloor当前入会会员的层级floor

*@paramarray$result待返回的会员位置集合数组

*/

functiongetPosArray($rehousepos,$rehousefloor,$currentfloor,$type='right')

{

$result=[];//返回位置数组

$now=[];//当前的数组,会清空

$other=[];//中间数组

$floorCha=$currentfloor-$rehousefloor;

for($i=1;$i<=$floorCha;$i++){

if($i==1){

if($type=='right'){

$now[]=$result[]=$rehousepos*2+1;

}else{

$now[]=$result[]=$rehousepos*2;

}

}else{

foreach($nowas$key=>$value){

$other[]=$result[]=$value*2;

$other[]=$result[]=$value*2+1;

}

unset($now);

$now=$other;//数组替换

unset($other);

}

}

return$result;

}

调用方式:

print_r($this->getPosArray(4, 3, 29));

第三个参数大于20的时候就会出现内存泄露的情况,这个问题导致系统出现问题,希望能够得到高手的思路或者是方法?谢谢~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。