首頁 > 後端開發 > PHP問題 > php怎麼實作文件縮圖

php怎麼實作文件縮圖

藏色散人
發布: 2023-03-11 14:14:02
原創
2371 人瀏覽過

php實作檔案縮圖的方法:先建立一個PHP範例檔案;然後透過「if ($_REQUEST['action']=="add"){...}if ($userfile_size>102400 ){...}”方法實作從上傳檔案建立縮圖即可。

php怎麼實作文件縮圖

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

php怎麼實作檔案縮圖?

php實作從上傳檔案建立縮圖的方法

 

本文實例講述了php實作從上傳檔案建立縮圖的方法。

具體實作方法如下:

<?php
if ($_REQUEST[&#39;action&#39;]=="add"){
$userfile = $HTTP_POST_FILES[&#39;photo&#39;][&#39;tmp_name&#39;];
$userfile_name = $HTTP_POST_FILES[&#39;photo&#39;][&#39;name&#39;];
$userfile_size = $HTTP_POST_FILES[&#39;photo&#39;][&#39;size&#39;];
$userfile_type = $HTTP_POST_FILES[&#39;photo&#39;][&#39;type&#39;];
///////////////////////// 
//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影片教學

以上是php怎麼實作文件縮圖的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板