Php 移动网站交付前更改图像宽度

Php 移动网站交付前更改图像宽度,php,css,image,Php,Css,Image,我有一个桌面网站,其中我使用的图像大小为500*500。我在我的手机网站上使用相同的图片 问题是,手机下载如此大的图像需要花费大量的时间。如果我在中指定宽度和高度属性,它只会以指定的大小显示,但会下载原始图像 最好的处理方法是什么?我无法手动更改所有数千张图像的大小并将其上载到其他文件夹中 在css中指定max width属性就可以了?对于您的问题,您可以使用一些JS计算图像的高度-宽度,并相应地创建URL,然后分配给img标记 假设服务器上的照片目录下有一张名为1.jpg的照片 photo.p

我有一个桌面网站,其中我使用的图像大小为500*500。我在我的手机网站上使用相同的图片

问题是,手机下载如此大的图像需要花费大量的时间。如果我在
中指定宽度和高度属性,它只会以指定的大小显示,但会下载原始图像

最好的处理方法是什么?我无法手动更改所有数千张图像的大小并将其上载到其他文件夹中


在css中指定
max width
属性就可以了?

对于您的问题,您可以使用一些JS计算图像的高度-宽度,并相应地创建URL,然后分配给img标记

假设服务器上的照片目录下有一张名为1.jpg的照片

photo.php

<?php
require 'ImageResize.php';

header('Content-Type: image/jpeg');
if(file_exists('photos/'.$_GET['id'].'.jpg')){

    $image = new ResizeImage();
    $image->load('photos/'.$_GET['id'].'.jpg');
    $image->resize($_GET['width'], $_GET['height']); //25-width, 30-height
    $image->output();
}

不,最大宽度属性不会改变任何东西:浏览器必须下载src属性中给出的图像的所有内容,然后才能调整大小。如果你想要一张没有大小的图片,你可以用另一个名字和你想要的大小来创建它,那么css可以为你做得很好。

<!--Replace...-->
<img src=imgurl>
<!--...by:-->
<span id=someid></span>
使用此代码,span将显示您需要的图片大小。

PS:你可以在gogole上找到一些可以帮助你调整图片文件夹大小的应用程序,也许可以帮助你?

为什么php不能在一个脚本中全部更改它们并将它们放在另一个文件夹中?检查代码示例-是的,这是可能的,让我检查一下。感谢您的快速回复如果您使用的是引导css,请尝试将class=“img responsive”设置为图像标记。@PavithraAshwath这不会只是更改图像显示大小而不是下载大小吗?这可能也很有用。在重新处理之前,在服务器上存储新的图像大小,并检查该图像大小是否存在,这不是更有效吗?答案足够好,唯一的问题是,它不会影响加载时间吗?不,它不应该影响服务器是否足够好,还将使您的站点响应速度更快,如果您使用预定义大小的图像,您最终将只使用少数分辨率的自适应站点。嘿,名称中带有“空白”的图像不会随此加载,尝试用%20替换空白,但没有效果。你知道为什么它不能加载这样的图片吗?如果(文件存在('photos/'.urldecode($\u GET['id'])),请尝试下面的
<!--Replace...-->
<img src=imgurl>
<!--...by:-->
<span id=someid></span>
#someid{
    display: inline-block;
    height: 500px;
    width: 500px;
    background: url(imgurl) no-repeat;
}
/*next lines are gonna apply only if it's a mobile browser (css3)*/
@media handheld{
    #imgurl{
        height: 250px;
        width: 250px;
        background: url(imgurl_resized_250) no-repeat;
    }
}