0
我編寫了一個經過測試的工作代碼,用於縮小圖像大小,即在上載圖像時從一個文件夾複製到另一個文件夾。它將圖像尺寸縮小到300和300的高度。將圖像複製到多個文件夾中
我還希望將相同的圖像尺寸縮小到100和100的寬度,因此我可以將最小的圖像用作配置文件圖片和電子郵件收件箱圖像。而另一個則在用戶相冊上的300和高度300的圖像上。
我要上傳的圖像複製到的寬度300 2個不同大小和高度300和100和高度100
請幫助我。
if(move_uploaded_file($this->tem_path, $terger_path)){
$exe = explode(".", $this->filename);
$ext = $exe[1];
$w = 300;
$h = 300;
$target = SITE_ROOT.DS.$this->img_path.DS.$this->filename;
$newcopy = SITE_ROOT.DS.$this->resize.DS.$this->filename;
list($w_orig, $h_orig) = getimagesize($target);
$scale_ratio = $w_orig/$h_orig;
if (($w/$h) > $scale_ratio) {
$w = $h * $scale_ratio;
} else {
$h = $w/$scale_ratio;
}
$img = "";
$ext = strtolower($ext);
if ($ext == "gif"){
$img = imagecreatefromgif($target);
} else if($ext =="png"){
$img = imagecreatefrompng($target);
} else {
$img = imagecreatefromjpeg($target);
}
$tci = imagecreatetruecolor($w, $h);
imagecopyresampled($tci, $img, 0, 0, 0, 0, $w, $h, $w_orig, $h_orig);
if(@imagejpeg($tci, $newcopy, 80)){
// return true;
$terger_path = SITE_ROOT.DS.$this->img_path.DS.$this->filename;
return unlink($terger_path) ? true : false;
}
}