【发布时间】:2013-03-15 10:59:52
【问题描述】:
我有一个我正在使用 PHP 构建的应用程序,它根据给定植物物种的图像数量从数据库中调用照片。我让脚本将原本较大的照片调整为 100x100。这个过程确实占用了页面加载时间,我的计算机的 CPU 达到 100% 并且工作非常努力。
我认为这是因为所有图像都同时加载...有没有办法让它们仅在前一个完成时才加载?或者有没有更有效的方法来渲染这样的图像?这是加载它们的 sn-p:
$imagesArray = explode(", ",$images);
unset($imagesArray[count($imagesArray)-1]); // get rid of the last array key which is blank.
echo '<tr><td>Images:</td><td>';
foreach ($imagesArray as $imgloc)
{
echo '<a target="_blank" href="plant_images/'.$imgloc.'"><img src="plant_images/'.$imgloc.'" width="100" height="100" alt="'.$row[2].'" title="'.$row[2].'" /></a> ';
}
这是页面中部分加载的图像的屏幕截图(这比其他时候发生的要好得多!说真的,有些物种有 10-12 张图像,我的电脑需要大约 15 秒才能加载页面,很痛苦)
http://www.captainscall.site11.com/temp_stuff/slow-img.png
我已经找到this,有点帮助。 非常感谢你, 哈纳克
【问题讨论】:
-
您是否调整了这些缩略图的大小?在我看来,它们显示的是原始尺寸,缩小了。
-
@ThomasHambach 我没有调整它们的大小;它们正是原始图像,呈现为 100 x 100。我真的不喜欢调整所有它们的大小..
-
如果您在客户端使用 Javascript,则只有在前一张图片加载完成后才能请求图片。