ホームページ  >  記事  >  バックエンド開発  >  サムネイルを生成するphp関数

サムネイルを生成するphp関数

WBOY
WBOYオリジナル
2016-06-23 13:48:58641ブラウズ

顧客がアップロードした写真のサイズは標準ではなく、アップロードした写真のサイズを一律 150X113 にしたいと考えています。インターネット上にあるプログラムは IE では正常に動作しますが、他のブラウザ (Sogou ブラウザなど) では動作しません。原因は何ですか? (常に実行されない感じです)
コードは以下の通りです:

session_start();
if (isset($_SESSION['adminname']) && isset($_SESSION['adminpass'] )){


//****************************************
/ /サムネイルを生成= =======================================
$myname=date(" YmdHis");

$filename="product/min/".$myname; //小さい画像ファイル名
$resizewidth=150; //生成される画像の幅
$resizeheight=113; //生成される画像の高さ


関数 ResizeImage ($im,$maxwidth,$maxheight,$name){
$resizewidth = $resizeheight = false;
$width = images($im); (($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){
if($maxwidth && $width > $maxwidth){
$widthratio = $maxwidth/$width ;
$resizewidth =true; }
if($maxheight && $height > $maxheight){
$resizeheight=true;
if($resizewidth && $resizeheight) {
if( $widthratio < $heightratio){
$ratio = $widthratio;
}else{
$ratio = $heightratio; }
}elseif($resizewidth){
$ratio = $widthratio; if($resizeheight) {
$ratio = $heightratio;
$newwidth = $width * $ratio;
if(function_exists("imagecopyresampled")){
$newim = imagecreatetruecolor($newwidth , $newheight);
imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
$newim = imagecreate($) newwidth, $newheight) ;
imagecopyresize($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
}
ImageJpeg ($newim,$name .jpg ");
ImageDestroy ($newim);
}else{
ImageJpeg ($im,$name . ".jpg");
}
}



if(isset($_FILES['image'][' size'])) {
if($_FILES['image']['type'] == "image/pjpeg"){
$im = imagecreatefromjpeg($_FILES['image']['tmp_name']);
}elseif($ _FILES['image']['type'] == "image/x-png"){
$im = imagecreatefrompng($_FILES['image']['tmp_name']); ($_FILES['image']['type'] == "image/gif"){
$im = imagecreatefromgif($_FILES['image']['tmp_name']);


if($ im){
if (file_exists("$filename.jpg")){
unlink("$filename.jpg") }

ResizeImage($im,$resizewidth,$resizeheight,$filename); // 生成small image
ImageDestroy ( $im);

echo "アップロードは成功しました。画像ファイル名は次のとおりです: ";
echo $myname."
}
}

//****** ******** *******************************
}else{
echo "