首页 > 后端开发 > php教程 > 网站上能动态调用不同尺寸的图片吗

网站上能动态调用不同尺寸的图片吗

WBOY
发布: 2016-06-23 14:18:08
原创
1147 人浏览过

页面上可能在不同位置,需要不同尺寸的图片

比如发表了一篇文章,上传标题图片,生成了一张原图580*700的和一个宿略图100*100的

如果我要在首页调用这个图片,尺寸是200*240的,怎么办, 是对580*700的原图限定width为200吗?(加载原图影响性能吧)

还是上传图片时,把需要的尺寸图全部上传上去(这样也不太好吧,比如我在首页或其它页面使用的尺寸都不同,岂不是要上传很多的不同尺寸的图片)

有没有什么好的解决方案


回复讨论(解决方案)

我们网站的做法是传一张图  就生成七张大小不同的图存储起来.   这七张是根据需求设定好的  

然后在对应位置调用对应尺寸的图片


如果用img标签的width height强行缩放  网页会卡.

一般都缩小到各种尺寸,别以为这是省略存储空间
比较一下100k到10k缩小前后的流量,设定有10个页面用到这张图,每天1万人访问,都看满了这10页,并假设客户端缓存足够一天的浏览量(当天刷新页面不重新传送图片)

100k*10*10000*30=300G/月
缩小后自然就除以10,30G/月

这只是一张图片只用于10个页面,还没计算页面刷新、更多图片、更多页面调用(别小看“转载”啊)的情况
所以越大的站,越要减少图片字节数,当然是按需要,不能一味只求省流量,也要顾及服务质量

至于图片站展示原图那是另一回事,那是从服务质量角度考虑的,而且原图极少在多个页面重复展示

楼上说的没错  存储空间可比流量/带宽 便宜太多了....

嗯,纠正一下上面的错误,如果同一张图(url相同),客户端使用缓存并已存在此图的话,无论多少个页面,都不会重复传,但不同的浏览器,还是少不了的

页面上可能在不同位置,需要不同尺寸的图片

比如发表了一篇文章,上传标题图片,生成了一张原图580*700的和一个宿略图100*100的

如果我要在首页调用这个图片,尺寸是200*240的,怎么办, 是对580*700的原图限定width为200吗?(加载原图影响性能吧)

还是上传图片时,把需要的尺寸图全部上传上去(这样也不太好吧,比如我在首页或其它页面使用的尺寸都不同,岂不是要上传很多的不同尺寸的图片)

有没有什么好的解决方案
数据库结构怎么设计?有七个不同的尺寸标题图,建七个字段存放吗?


页面上可能在不同位置,需要不同尺寸的图片

比如发表了一篇文章,上传标题图片,生成了一张原图580*700的和一个宿略图100*100的

如果我要在首页调用这个图片,尺寸是200*240的,怎么办, 是对580*700的原图限定width为200吗?(加载原图影响性能吧)

还是上传图片时,把需要的尺寸图全部上传上去(这样也不太好吧,比如我在首页或其它页面使用的尺寸都不同,岂不是要上传很多的不同尺寸的图片)

有没有什么好的解决方案
数据库结构怎么设计?有七个不同的尺寸标题图,建七个字段存放吗?

我举个例子

比如图片123.jpg

数据库存123.jpg

七张大小不同的图片是 a_123.jpg   b_123.jpg ... 

数据库里只存一条..... 程序调用的时候加上尺寸对应的前缀即可.

我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

不错的思路,学习下

我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

请问和直接读文件比 响应速度如何?


我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

请问和直接读文件比 响应速度如何? 比直接?取?存的多?尺寸的?片速度要慢,原因如下:直接?取已存?的?片只需要消耗????,而我的做法?需要cpu首先?整?片的尺寸再?出到客?端,所以多了一?步?.至於慢多少就要看服?器的cpu速度了.



我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

请问和直接读文件比 响应速度如何? 比直接?取?存的多?尺寸的?片速度要慢,原因如下:直接?取已存?的?片只需要消耗????,而我的做法?需要cpu首先?整?片的尺寸再?出到客?端,所以多了一?步?.至於慢多少就要看服?器的cpu速度了.

明白了 不过这个思路不错 之前我没有想到

应该会有地方可以用到,不常用的图片之类的




我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

请问和直接读文件比 响应速度如何? 比直接?取?存的多?尺寸的?片速度要慢,原因如下:直接?取已存?的?片只需要消耗????,而我的做法?需要cpu首先?整?片的尺寸再?出到客?端,所以多了一?步?.至於慢多少就要看服?器的cpu速度了.

明白了 不过这个思路不错 之前我没有想到

应该会有地方可以用到,不常用的图片之类的 ??做法的好?是只需要在服?器上存?一?原?即可,不需要考?多???,缺?是?有?外的cpu??




我的做法是用php???生各?尺寸的?片,例如
网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗 网站上能动态调用不同尺寸的图片吗
我??a.jpg就是原?,每次用?在?求的?候??不同的尺寸到服?器,服?器???用img.php???整原??客?要求的尺寸,?整完?之後直接?出到客?端,?????出的?片?未被直接存?到服?器上,??做法的好?是不用存?多??片,也不?心流量??,但是他??用服?器的cpu?理能力.

请问和直接读文件比 响应速度如何? 比直接?取?存的多?尺寸的?片速度要慢,原因如下:直接?取已存?的?片只需要消耗????,而我的做法?需要cpu首先?整?片的尺寸再?出到客?端,所以多了一?步?.至於慢多少就要看服?器的cpu速度了.

明白了 不过这个思路不错 之前我没有想到

应该会有地方可以用到,不常用的图片之类的

我也想过这种做法,比如在循环输出文章列表时,每输出一篇文章都要调用img.php输出缩略图
如果网站访问量大,这样网站可能变得很慢


页面上可能在不同位置,需要不同尺寸的图片

比如发表了一篇文章,上传标题图片,生成了一张原图580*700的和一个宿略图100*100的

如果我要在首页调用这个图片,尺寸是200*240的,怎么办, 是对580*700的原图限定width为200吗?(加载原图影响性能吧)

还是上传图片时,把需要的尺寸图全部上传上去(这样也不太好吧,比如我在首页或其它页面使用的尺寸都不同,岂不是要上传很多的不同尺寸的图片)

有没有什么好的解决方案
数据库结构怎么设计?有七个不同的尺寸标题图,建七个字段存放吗?

这样做时间长了,会产生很多的冗余图片吧,有些图片网站上始终用不到,但会一直存在服务器上占用空间

访问量大还是老老实实做静态文件吧
像#1的做法,每当有上传图片就执行转换,保存几种固定尺寸的图片?? 一劳
然后在不同页面调用适合的尺寸,虽然不一定就完全和页面要求一致,但用html轻微改变width/heigh影响不大?? 永逸

更大的站还要cdn缓存呢

动态生成图片对服务器压力太大,还是直接生成多种不同格式的好,毕竟硬盘不值钱。

如果怕图片过多,存储的时候按分辨率存在不同文件夹,以后整理的时候也好删除

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板