php实现在服务器端调整图片大小的方法


Posted in PHP onJune 16, 2015

本文实例讲述了php实现在服务器端调整图片大小的方法。分享给大家供大家参考。具体分析如下:

在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处。
本文介绍了PHP如何在服务器端调整图片大小。

代码包括两部分:

① imageResizer() is used to process the image
② loadimage() inserts the image url in a simpler format

<?php
 function imageResizer($url, $width, $height) {
  header('Content-type: image/jpeg');
  list($width_orig, $height_orig) = getimagesize($url);
  $ratio_orig = $width_orig/$height_orig;
  if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
  } else {
   $height = $width/$ratio_orig;
  }
  // This resamples the image
  $image_p = imagecreatetruecolor($width, $height);
  $image = imagecreatefromjpeg($url);
  imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
  // Output the image
  imagejpeg($image_p, null, 100);
 }
 //works with both POST and GET
 $method = $_SERVER['REQUEST_METHOD'];
 if ($method == 'GET') {
  imageResize($_GET['url'], $_GET['w'], $_GET['h']);
  } elseif ($method == 'POST') {
  imageResize($_POST['url'], $_POST['w'], $_POST['h']);
  }
 // makes the process simpler
 function loadImage($url, $width, $height){
  echo 'image.php?url=', urlencode($url) ,
  '&w=',$width,
  '&h=',$height;
 }
?>

用法:

//Above code would be in a file called image.php.
//Images would be displayed like this:
<img src="<?php loadImage('image.jpg', 50, 50) ?>" alt="" />

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP 导出数据到淘宝助手CSV的方法分享
Feb 27 PHP
PHP 过滤页面中的BOM(实现代码)
Jun 29 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
Sep 30 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
PHP实现抓取HTTPS内容
Dec 01 PHP
PHP+jquery实时显示网站在线人数的方法
Jan 04 PHP
8个PHP数组面试题
Jun 23 PHP
PHP文件缓存类实现代码
Oct 26 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
Dec 31 PHP
解读PHP的Yii框架中请求与响应的处理流程
Mar 17 PHP
PHP7匿名类用法分析
Sep 26 PHP
浅析php-fpm静态和动态执行方式的比较
Nov 09 PHP
PHP正则验证Email的方法
Jun 15 #PHP
PHP实现通过正则表达式替换回调的内容标签
Jun 15 #PHP
PHP检测用户语言的方法
Jun 15 #PHP
php实现求相对时间函数
Jun 15 #PHP
php数组随机排序实现方法
Jun 13 #PHP
隐性调用php程序的方法
Jun 13 #PHP
PHP获取数组的键与值方法小结
Jun 13 #PHP
You might like
php不用正则验证真假身份证
2013/11/06 PHP
php二维数组合并及去重复的方法
2015/03/04 PHP
js判断浏览器的比较全的代码
2007/02/13 Javascript
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
JQuery 选择和过滤方法代码总结
2010/11/19 Javascript
jQuery的text()方法用法分析
2014/12/20 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
2017/04/17 jQuery
JS实现动态添加DOM节点和事件的方法示例
2017/04/28 Javascript
ES6 javascript中class静态方法、属性与实例属性用法示例
2017/10/30 Javascript
node.js中fs文件系统目录操作与文件信息操作
2018/02/24 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
2020/05/18 Javascript
[00:32]10月24、25日 辉夜杯外卡赛附加赛开赛!
2015/10/23 DOTA
Python人脸识别初探
2017/12/21 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
python zip()函数使用方法解析
2019/10/31 Python
python GUI库图形界面开发之PyQt5动态(可拖动控件大小)布局控件QSplitter详细使用方法与实例
2020/03/06 Python
python数据类型强制转换实例详解
2020/06/22 Python
Django Form设置文本框为readonly操作
2020/07/03 Python
改变 Python 中线程执行顺序的方法
2020/09/24 Python
海淘母婴商城:国际妈咪
2016/07/23 全球购物
荷兰手表网站:Watch2Day
2018/07/02 全球购物
SQL语言面试题
2013/08/27 面试题
国际金融专业大学生职业生涯规划书
2013/12/28 职场文书
高三高考决心书
2014/03/11 职场文书
体育系毕业生求职自荐信
2014/04/16 职场文书
留学经费担保书
2014/05/12 职场文书
拓展策划方案
2014/06/03 职场文书
入党个人总结范文
2015/03/02 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
毕业季聚会祝酒词!
2019/07/04 职场文书
标准发言稿结尾
2019/07/18 职场文书
MySQL 使用SQL语句修改表名的实现
2021/04/07 MySQL