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 相关文章推荐
从网上搜到的phpwind 0day的代码
Dec 07 PHP
PHP之autoload运行机制实例分析
Aug 28 PHP
php基于mcrypt的加密解密实例
Oct 27 PHP
微信公众平台消息接口校验与消息接口响应实例
Dec 23 PHP
php简单判断两个字符串是否相等的方法
Jul 13 PHP
php 数组处理函数extract详解及实例代码
Nov 23 PHP
PHP/HTML混写的四种方式总结
Feb 27 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
Apr 21 PHP
PHP性能测试工具xhprof安装与使用方法详解
Apr 29 PHP
Django中通过定时任务触发页面静态化的处理方式
Aug 29 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
Dec 08 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
超外差式晶体管收音机的组装与统调
2021/03/01 无线电
用PHP生成静态HTML速度快类库
2007/03/18 PHP
PHP Session变量不能传送到下一页的解决方法
2009/11/27 PHP
PHP中SESSION使用中的一点经验总结
2012/03/30 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
2014/08/19 PHP
使用 PHPStorm 开发 Laravel
2015/03/24 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
2016/10/17 PHP
Locate a File Using a File Open Dialog Box
2007/06/18 Javascript
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
JS字符串处理实例代码
2013/08/05 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
JavaScript strike方法入门实例(给字符串加上删除线)
2014/10/17 Javascript
深入分析原生JavaScript事件
2014/12/29 Javascript
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
js绘制圆形和矩形的方法
2015/08/05 Javascript
Javascript 字符串模板的简单实现
2016/02/13 Javascript
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(三)
2016/09/14 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
jquery仿苹果的时间/日期选择效果
2017/03/08 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
Vue3不支持Filters过滤器的问题
2020/09/24 Javascript
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
django 自定义filter 判断if var in list的例子
2019/08/20 Python
教师节商场活动方案
2014/02/13 职场文书
大学生秋游活动方案
2014/02/17 职场文书
旅游市场营销方案
2014/03/09 职场文书
春游踏青活动方案
2014/08/14 职场文书
行政主管岗位职责
2015/02/03 职场文书
javascript对象3个属性特征
2021/11/17 Javascript
python turtle绘图命令及案例
2021/11/23 Python
Python 的演示平台支持 WSGI 接口的应用
2022/04/20 Python
基于Python实现西西成语接龙小助手
2022/08/05 Golang