如何使用PHP实现服务端图片生成缩略图
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要介绍如何使用PHP实现服务端图片生成缩略图,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码如下:
千家信息网最后更新 2025年01月16日如何使用PHP实现服务端图片生成缩略图
这篇文章主要介绍如何使用PHP实现服务端图片生成缩略图,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
代码如下:
1, '200_100'=> 1 );$imagePath = "../image/";function parseUrl($url){ preg_match("/(?P[\w\d]+)_w(?P \d+)_h(?P \d+)\.(?P \w+)/",$url,$match); return $match;}$urlArr = explode("/",$_SERVER['REQUEST_URI']);$imgName = $urlArr[count($urlArr)-1];$picInfo = parseUrl($imgName);//错误尺寸if(empty($picInfo['width']) || empty($picInfo['height']) ||!array_key_exists($picInfo['width'].'_'.$picInfo['height'],$picSize)) die('不存在该尺寸图片');$originalPic = $imagePath.$picInfo['name'].'/'.$picInfo['name'].'.'.$picInfo['ext'];//原始图不存在if(!file_exists($originalPic)) die("图片不存在!");/** *等比例压缩图片 */switch($picInfo['ext']){ case 'jpg': $orgImg = ImageCreateFromJpeg($originalPic); break; default: break;}$owidth = ImageSX($orgImg); //原始尺寸$oheight = ImageSY($orgImg);$tW = $picInfo['width'];$tH = $picInfo['height'];//获取缩略图尺寸if($owidth/$oheight > $tW/$tH){ $tH = intval($tW * $oheight/$owidth);}else{ $tW = intval($tH * $owidth/$oheight);}//生成背景图$new_img = ImageCreateTrueColor($picInfo['width'], $picInfo['height']);$bgColor = imagecolorallocate($new_img,255,255,255);if (!@imagefilledrectangle($new_img, 0, 0, $picInfo['width']-1, $picInfo['height']-1, $bgColor)) { echo "无法创建背景图"; //@todo记录日志 exit(0);}if (!@imagecopyresampled($new_img, $orgImg, ($picInfo['width']-$tW)/2, ($picInfo['height']-$tH)/2, 0, 0, $tW, $tH, $owidth, $oheight)) { echo "生成图片失败"; exit(0);}//生成图片ob_start();imagejpeg($new_img);$_newImg = ob_get_contents();ob_end_clean();file_put_contents($imagePath.$picInfo['name']."/".$imgName, $_newImg);header("Content-type:image/jpeg; charset=utf-8");imagejpeg($new_img);?>
使用时候绑定apache conf 的 documentError 404 的handler 为此文件。。
以上是"如何使用PHP实现服务端图片生成缩略图"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
图片
生成
尺寸
服务
原始
内容
篇文章
背景
为此
代码
价值
兴趣
小伙
小伙伴
文件
日志
时候
更多
知识
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
icmp网络安全协议
我的世界进服务器
浙江ntp时钟服务器搭建
软件开发用户对环境的要求
软件开发基本步骤
数据库对软件工程专业重要吗
廊坊软件开发公司米云
软件开发维保合同
软件开发合同规避风险
云服务器关闭防火墙
威海云服务器ecs
软件开发公司www
深圳程序员软件开发人员
淄博化工管理软件开发
关于宣传网络安全的绘画
三级网络技术工作穿搭
数据库临时
荆州网络安全技术改造项目
京东互联网科技实践中心
网络安全与谣言
如何看自己数据库版本是哪一年的
天津服务器虚拟化优化服务器
网络安全意识形势发言稿
数据库一对一练习例子
腐蚀怎么看服务器名
网络技术优化网页
雅马哈贴片机的数据库怎么选
深圳程序员软件开发人员
电脑服务器访问不了
bim软件开发的目的