首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这个页面会导致内存泄漏吗?

问这个页面会导致内存泄漏吗?
EN

Stack Overflow用户
提问于 2013-11-19 20:45:34
回答 1查看 92关注 0票数 0

我有一个下面的页面,它为用户加载了一个图像,url看起来像一些url/page.php?path=a.jpg当人们访问这个页面时,我发现内存使用量增加得很快,我不确定这个页面是否导致了内存泄漏。

代码语言:javascript
复制
 <?php
    $tar_path=urldecode($_GET['path']); 
    $strs=preg_split("/\./",$tar_path); 
    $small_name = $strs[0].'_small.'.$strs[1]; 
    header('Content-type: image/jpeg'); 
    if(file_exists($small_name))
    {
        $PSize = filesize($small_name );
        $picturedata = fread(fopen($small_name, "r"), $PSize);
        echo $picturedata;
    }else
    {
        $im = imagecreatefromjpeg($tar_path);  
        $maxwidth = 150;  
        $maxheight = 0; 

        $pic_width = imagesx($im);  
        $pic_height = imagesy($im);  



        $widthratio = $maxwidth/$pic_width;  
        $resizewidth_tag = true;  



        $ratio = $widthratio;  

        $newwidth = $pic_width * $ratio;             
        $newheight = $pic_height * $ratio;         
        if(function_exists("imagecopyresampled"))  
        {  
            $newim = imagecreatetruecolor($newwidth,$newheight);   
            imagecopyresampled($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);   
        }  
        else  
        {  
            $newim = imagecreate($newwidth,$newheight);  
            imagecopyresized($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);  
        }  

        imagejpeg($newim,$small_name);  
        imagedestroy($newim);  
        imagedestroy($im);
        $PSize = filesize($small_name );
        $picturedata = fread(fopen($small_name, "r"), $PSize);
        echo $picturedata;
    }         
    ?>  
EN

回答 1

Stack Overflow用户

发布于 2013-11-19 20:48:44

浏览器或服务器的内存使用情况?

php解释器应该在脚本执行结束时释放所有内存。在这种情况下,服务器上的内存消耗增加可能表明处理图像的工作量很大,但完成后应释放所有内存。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20071956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档