前端之家收集整理的这篇文章主要介绍了
php 从上传的文件创建缩略图的简单示例,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对
PHP从
上传的
文件创建
缩略图感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
<?
/**
* PHP从上传的文件创建缩略图
*
* @param
* @author 编程之家 jb51.cc jb51.cc
**/
if ($_REQUEST['action']=="add"){
$userfile = $HTTP_POST_FILES['photo']['tmp_name'];
$userfile_name = $HTTP_POST_FILES['photo']['name'];
$userfile_size = $HTTP_POST_FILES['photo']['size'];
$userfile_type = $HTTP_POST_FILES['photo']['type'];
/////////////////////////
//GET-DECLARE DIMENSIONS //
$dimension = getimagesize($userfile);
$large_width = $dimension[0]; // GET PHOTO WIDTH
$large_height = $dimension[1]; //GET PHOTO HEIGHT
$small_width = 120; // DECLARE THUMB WIDTH
$small_height = 90; // DECLARE THUMB HEIGHT
/////////////////////////
//CHECK SIZE //
if ($userfile_size>102400){
$error=1;
$msg = "The photo is over 100kb. Please try again.";
}
////////////////////////////////
// CHECK TYPE (IE AND OTHERS) //
if ($userfile_type="image/pjpeg"){
if ($userfile_type!="image/jpeg"){
$error=1;
$msg = "The photo must be JPG";
}
}
//////////////////////////////
//CHECK WIDTH/HEIGHT //
if ($large_width!=600 or$large_height!=400){
$error=1;
$msg = "The photo must be 600x400 pixels";
}
///////////////////////////////////////////
//CREATE THUMB / UPLOAD THUMB AND PHOTO ///
if ($error<>1){
$image = $userfile_name; //if you want to insert it to the database
$pic = imagecreatefromjpeg($userfile);
$small = imagecreatetruecolor($small_width,$small_height);
imagecopyresampled($small,$pic,$small_width,$small_height,$large_width,$large_height);
if (imagejpeg($small,"path/to/folder/to/upload/thumb".$userfile_name,100)){
$large = imagecreatetruecolor($large_width,$large_height);
imagecopyresampled($large,$large_height,$large_height);
if (imagejpeg($large,"path/to/folder/to/upload/photo".$userfile_name,100))
{}
else {$msg="A problem has occured. Please try again."; $error=1;}
}
else {
$msg="A problem has occured. Please try again."; $error=1;
}
}
//////////////////////////////////////////////
/// If everything went right a photo (600x400) and
/// a thumb(120x90) were uploaded to the given folders
}
/*** 来自编程之家 jb51.cc(jb51.cc) ***/
?>
经测试
代码如下:
<html><head><title>create thumb jb51.cc</title></head>
<body>
<form name="form1" enctype="multipart/form-data" action="thisfile.PHP?action=add" method="post">
Select Photo: <input type="file" name="photo">
<input type="submit" name="submit" value="CREATE THUMB AND UPLOAD">
</form>
</body
</html>