php动态生成缩略图并输出显示的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php动态生成缩略图并输出显示的方法。分享给大家供大家参考。具体如下:

调用方法:

<img src="thumbs.php?filename=photo.jpg&width=100&height=100">

此代码可以为大图片动态生成缩略图显示,图片在内存中生成,不在硬盘生成真实文件

thumbs.php文件如下:

<?php
$filename= $_GET['filename'];
$width = $_GET['width'];
$height = $_GET['height'];
$path="http://localhost/images/"; //finish in "/"
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($path.$filename);
if ($width && ($width_orig < $height_orig)) {
  $width = ($height / $height_orig) * $width_orig;
} else {
  $height = ($width / $width_orig) * $height_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($path.$filename);
imagecopyresampled($image_p,$image,0,0,0,0,$width,$height,$width_orig,$height_orig);
// Output
imagejpeg($image_p, null, 100);
// Imagedestroy
imagedestroy ($image_p);
?>

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

相关文章

PHP header()函数常用方法总结

//定义编码复制代码 代码如下:header( 'Content-Type:text/html;charset=utf-8 ');//Atom复制代码 代码如下:header('Cont...

php实现的微信分享到朋友圈并记录分享次数功能

本文实例讲述了php实现的微信分享到朋友圈并记录分享次数功能。分享给大家供大家参考,具体如下: 1.引入JS文件 2.通过config接口注入权限验证配置 3.通过ready接口处理成功...

PHP使用ActiveMQ实现消息队列的方法详解

PHP使用ActiveMQ实现消息队列的方法详解

本文实例讲述了PHP使用ActiveMQ实现消息队列的方法。分享给大家供大家参考,具体如下: 前面我们已经学了如何部署ActiveMQ, 我们知道通过ActiveMQ的一个管理后台可...

php二分法在IP地址查询中的应用

数据库大概存储几十万条IP记录,记录集如下: +----------+----------+------------+---------+---------+--------+-----...

在PHP中使用redis

在Mac OS上安装redis首先是安装,它会默认安装到/usr/local/bin下复制代码 代码如下:cd /tmpwget http://redis.googlecode.com/...