本篇文章给大家分享的是有关使用php怎么实现一个上传文件生成缩略图的功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
具体实现方法如下:
<?php 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,0,0,0,0, $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,$pic,0,0,0,0, $large_width, $large_height, $large_width, $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 } ?> <html><head><title>create thumb</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>
以上就是使用php怎么实现一个上传文件生成缩略图的功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。