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

yipeiwu_com7年前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 cookie名使用点号(句号)会被转换

这个标题不是很严格,应该说可以使用点号的cookie名,但会被转换,你命名一个cookie: $_COOKIE[‘my.name'] = 1; 实际上你不能通过'my.name'在coo...

输入值/表单提交参数过滤有效防止sql注入的方法

输入值/表单提交参数过滤,防止sql注入或非法攻击的方法: 复制代码 代码如下: /** * 过滤sql与php文件操作的关键字 * @param string $string * @r...

ThinkPHP中处理表单中的注意事项

本文实例讲述了ThinkPHP中处理表单中的注意事项。分享给大家供大家参考。具体分析如下: ThinkPHP中在表单提交数据中,有以下问题需要加以注意: 1、直接通过url访问模块中的某...

利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel

话不多说,请看代码: <?php date_default_timezone_set("PRC"); error_reporting(E_ALL); error_re...

php开发时容易忘记的一些技术细节

在做开发的时候,有可能会忘记掉一些技术细节。这些细节有可能会造成很严重的后果,比如网站被注入、网站崩溃等等。现在我们总结一下,有可能会遇到的一些 PHP 中的一些 “陷阱”。 陷阱一:e...