// import('ORG.Net.UploadFile');
// import('ORG.Util.Image');
import("@.ORG.UploadFile");
import("@.ORG.Image");
$img = new Image();
$field='./uploads/info_pic/20130706/51d7d1448be2f.jpg';
$toFile='./uploads/info_pic/20130706/51d7d1448be2f1.jpg';
$img->thumb($field,$toFile,'',60,80,true);谁可以帮我看下为什么本地可以生成缩略图,传到SAE上就生成不了,
而且TP里面很多目录里都有IMAGE类,不知道到底用哪一个,我是在SAE应用里下的最新版的TP.Index/Lib/ORG/目录下有Image.class.php,String.class.php,UploadFile.class.php
$display_width = 80;
$display_height = 60;
$imagesize = '80,60,240,180'; //图片上传大小
$size = explode(",", $imagesize);
// import('ORG.Net.UploadFile');
import('ORG.Util.Image');
import("@.ORG.UploadFile");
// import("@.ORG.Image");
$upload = new UploadFile();// 实例化上传类
$upload->maxSize = C("UPLOAD_MAX_SIZE"); ;// 设置附件上传大小
$upload->allowExts = C("UPLOAD_EXTS");// 设置附件上传类型
$upload->savePath = C("UPLOAD_PATH").'info_pic/'.date(Ymd).'/';// 设置头像上传目录
if(!$upload->upload()) {// 上传错误提示错误信息
echo json_encode(array('state' => $upload->getErrorMsg())); exit;
}else{// 上传成功 获取上传文件信息
$state="SUCCESS"; }
$info2 = $upload->getUploadFileInfo();
$field=C("UPLOAD_PATH").'info_pic/'.date(Ymd).'/'.$info2[0]['savename'];
$info = pathinfo($field);
$fileData = array();
$fileData[0]['path'] = $field; //上传后的大图
$fileData[0]['url'] = !-ROOT-!. $field; //上传后的大图URL
$json = array();
$json['state'] = $state;
$json['fid'] = md5($field);
$img = new Image();
if ($field) {//图片水印
$img->water($field,C('WATER_IMG')); }
if(function_exists('sae_storage_root')){
$json['thumb']['file'] = sae_storage_root('uploads').'/info_pic/'.date(Ymd).'/'.$info2[0]['savename'];
}else{
$json['thumb']['file'] = !-ROOT-!.'/'. $field; }
$json['thumb']['w'] = $display_width;
$json['thumb']['h'] = $display_height;
if ($imagesize && $field) {//图片裁切处理
$n = 1;
for ($i = 0; $i < count($size); $i+=2) {
$toFile = $info['dirname'].'/'.$info['filename'].$n.'.'.$info['extension'];
// file_put_contents('c:\123.txt', $field.'|'.$toFile.'|'.print_r($info));
$img->thumb($field,$toFile,'',$size[$i], $size[$i + 1],true);
$fileData[$n]['path'] = $toFile;
$n++;
// $s = new SaeStorage();
// $s->write ('uploads','123.txt',$field.'|'.$toFile.'|||||');exit;
}
}
$json['file'] = $fileData;
echo json_encode($json);
exit; 最佳答案