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面试题集锦
Mar 08 PHP
PHP处理excel cvs表格的方法实例介绍
May 13 PHP
简单的cookie计数器实现源码
Jun 07 PHP
基于php使用memcache存储session的详解
Jun 25 PHP
配置php网页显示各种语法错误
Sep 23 PHP
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
Jul 14 PHP
一个非常完美的读写ini格式的PHP配置类分享
Feb 12 PHP
php使用cookie实现记住登录状态
Apr 27 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 PHP
PHP多进程之pcntl_fork的实例详解
Oct 15 PHP
PHP命名空间与自动加载类详解
Sep 04 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
JavaScript的Cookies
2008/01/16 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
js使用for循环及if语句判断多个一样的name
2014/09/09 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
Vue.js框架路由使用方法实例详解
2017/08/25 Javascript
为输入框加入数字js校验代码分享
2017/11/02 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
vue中beforeRouteLeave实现页面回退不刷新的示例代码
2019/11/01 Javascript
javascript 关于赋值、浅拷贝、深拷贝的个人理解
2019/11/01 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
跟老齐学Python之集成开发环境(IDE)
2014/09/12 Python
Python CSV模块使用实例
2015/04/09 Python
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
python数据类型_元组、字典常用操作方法(介绍)
2017/05/30 Python
对python列表里的字典元素去重方法详解
2019/01/21 Python
python使用phoenixdb操作hbase的方法示例
2019/02/28 Python
自定义Django默认的sitemap站点地图样式
2020/03/04 Python
python实现拼接图片
2020/03/23 Python
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
2020/06/01 Python
Python自省及反射原理实例详解
2020/07/06 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
2021/01/08 Python
CSS3对背景图片的裁剪及尺寸和位置的设定方法
2016/03/07 HTML / CSS
高三英语教学反思
2014/01/13 职场文书
xxx同志考察材料
2014/02/07 职场文书
副处级干部考察材料
2014/05/17 职场文书
飞机制造技术专业求职信
2014/07/27 职场文书
项目转让协议书
2014/10/27 职场文书
2014年后勤工作总结
2014/11/18 职场文书
赤壁观后感(2)
2015/06/15 职场文书
利用Pycharm连接服务器的全过程记录
2021/07/01 Python
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL
java开发双人五子棋游戏
2022/05/06 Java/Android