|
|
|
|
php常用文件上传类 |
作者:袁袁整理 来源:帝网科技 日期:2008年09月07日 点击数: |
php常用文件上传类 /** * flie class * (jpg,gif,png) */ class Upload { var $_file; var $_fileType; var $target = 'upload/'; /** * construct for this class * * @param string $name * @return Upload */ function Upload($name) { if(isset($_FILES[$name])) { $this->_file = &$_FILES[$name]; $this->_parseUploadFile(); } else { die('No file upload.'); } } /** * set upload target path * * @param string $path * @return boolean */ function setTarget($path = 'upload/') { if(is_dir($path)) { $this->target = rtrim($path,'/').'/'; return true; } else { return false; } } /** * get the type of the file * */ function _parseUploadFile() { $type = $this->_file['type']; if(isset($type) && $type != '') { switch ($type) { case 'image/gif': $this->_fileType = 'gif'; break; case 'image/png': $this->_fileType = 'png'; break; case 'image/jpeg': $this->_fileType = 'jpg'; break; case 'image/pjpeg': $this->_fileType = 'jpg'; break; default: $this->_fileType = 'unknow'; break; } } else { $filename = $this->_file['name']; $filename = explode('.',$filename); $filename = strtoupper($filename[sizeof($filename) - 1]); switch ($filename) { case 'PNG': $this->_fileType = 'png'; break; case 'JPEG': $this->_fileType = 'jpg'; break; case 'JPG': $this->_fileType = 'jpg'; break; case 'GIF': $this->_fileType = 'gif'; break; default: $this->_fileType = 'unknow'; break; } unset($filename); } unset($type); } /** * upload file * * @return array */ function load() { if($this->_fileType == 'unknow') { die('Can not upload this file,because the type is not allow.'); } if(file_exists($this->_file['tmp_name']) && is_uploaded_file($this->_file['tmp_name'])) { $new_file_name = $this->target.time().'.'.$this->_fileType; move_uploaded_file($this->_file['tmp_name'],$new_file_name); return array('name'=>$new_file_name,'size'=>$this->_file['size'],'type'=>$this->_fileType); } else { return false; } } } ?>
|
|
|
|
|
|
|