错误提示:
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的时候就会出现内存泄露的情况,这个问题导致系统出现问题,希望能够得到高手的思路或者是方法?谢谢~