Php 图像缩放的优化方法

Php 图像缩放的优化方法,php,javascript,jquery,Php,Javascript,Jquery,我有以下功能,运行了大约25次,并将站点的加载时间延迟了10秒或更多。代码实质上是在计算图像宽度缩小或增大到310px时的高度。关于如何改进代码或建议其他选项,有什么建议吗?也许jQuery更适合这样做 function img_height($image){ $inputwidth = 310; list($width,$height) = getimagesize($image); if($width !== $inputwidth){ $outpu

我有以下功能,运行了大约25次,并将站点的加载时间延迟了10秒或更多。代码实质上是在计算图像宽度缩小或增大到310px时的高度。关于如何改进代码或建议其他选项,有什么建议吗?也许jQuery更适合这样做

function img_height($image){
    $inputwidth = 310;

    list($width,$height) = getimagesize($image);
    if($width !== $inputwidth){
        $outputheight = ($inputwidth * $height)/ $width;
    }elseif($width == $inputwidth){
        $outputheight = $height;
    }
    return 'style="height:'.$outputheight.'px;" ';
}

@Enigom-我在图像加载和动态更改大小方面做了很多工作。使用PHP确实无法在加载时间上产生很大的差异。我建议您使用AJAX并预加载图像,或者进行延迟加载。这样,您的站点将首先加载,然后图像在加载时会一直显示。

我建议将图像大小与图像名称一起存储在一些数据库结构(缓存)中。然后,您就可以知道所有的大小,并且您的站点的运行速度会非常快。

您可以简单地使用jquery工具来完成这项工作,因为这将在客户端浏览器上启动,而不会在服务器端进行任何加载/处理。另外,jquery的处理速度也比php快

您不需要
elseif
只需使用
else
。这些图像是在您的服务器上还是其他地方?@Wurstbro它们是从imgur中提取的。如果您总是得到相同的图像,请制作一个mysql表,将大小放入其中。如果你不能做到这一点,你应该考虑使用MyCURL,以防你已经不使用它。我猜现在你从imgur下载了一张又一张的图片。这就是为什么要花这么长时间。好的,谢谢!我会调查一下的。