- $file = JRequest::getVar( 'template_full_image', '', 'files', 'array' );//获得传过来的图片
- jimport('joomla.filesystem.file');
- $filenameext=explode(".",$file['name']);
- $filenameextcount=count($filenameext);
- $outputfile= time().".".$filenameext[(int)$filenameextcount-1];
- $filepath = JPath::clean(JPATH_ROOT.DS.'components/com_templateshow/upload/images/'.strtolower($outputfile));
- if (!JFile::upload($file['tmp_name'], $filepath)) {
- JError::raiseWarning(100, JText::_('Error. Unable to upload file'));
- return;
- }else{
- $types = $filenameext[(int)$filenameextcount-1];
- list($width, $height) = getimagesize($filepath);
- $thumb = JPath::clean(JPATH_ROOT.DS.'components/com_templateshow/upload/images/s_'.strtolower($outputfile));
- if('gif' == $types ){
- $gif = imagecreatefromgif($filepath);
- imagesavealpha($gif,true);
- $gifc = imagecreate(156, 145);
- imagealphablending($gifc,false);
- imagesavealpha($gifc,true);
- imagecopyresampled($gifc,$gif, 0, 0, 0, 0, 156, 145, $width, $height);
- imagegif($gifc,$thumb);
- }
- if( 'jpg' ==$types || 'jpeg' ==$types ){
- $gif = imagecreatefromjpeg($filepath);
- $gifc = imagecreatetruecolor(156, 145);
- imagecopyresampled($gifc,$gif, 0, 0, 0, 0, 156, 145, $width, $height);
- imagejpeg($gifc,$thumb);
- }
- if( 'png' ==$types ){
- $gif = imagecreatefrompng($filepath);
- imagesavealpha($gif,true);
- $gifc = imagecreatetruecolor(156, 145);
- imagealphablending($gifc,false);
- imagesavealpha($gifc,true);
- imagecopyresampled($gifc,$gif, 0, 0, 0, 0, 156, 145, $width, $height);
- imagepng($gifc,$thumb);
- }
- $row->template_full_image = strtolower($outputfile);
- //缩略图文件赋值给字段 }
来源: http://www.phpxs.com/code/1003560/