ThinkPHP 上传

来源:互联网 发布:人才系统源码 编辑:程序博客网 时间:2024/06/11 00:32

ThinkPHP内置了一个文件上传类,位于ORG类库包中的Net.UpdateFile类。最新版本的上传类包含的功能如下:批量上传、自动生成图片缩略图、上传检测、支持覆盖方式上传、支持上传类型、附件大小、上传路径定义、支持上传文件命名规则、支持对上传文件的Hash规则、根据日期或者哈希自动创建子目录。

[ 属性 ]
UploadFile类有很多有用的属性,可以非常灵活的进行设置。
maxSize 上传文件的最大值
allowExts 允许上传的文件后缀(使用数组定义)留空为不作检查
allowTypes 允许上传的文件类型(使用数组定义)留空为不作检查
thumb 是否对上传图片进行缩略图处理
thumbPath 缩略图保存路径
thumbMaxWidth 缩略图最大宽度
thumbMaxHeight 缩略图最大高度
thumbPrefix 缩略图命名前缀
thumbSuffix 缩略图命名后缀 默认为 _thumb
autoSub 是否启用子目录保存
subType 子目录创建方式 目前可以支持hash和date
dateFormat 日期格式的上传子目录创建格式 当subType=date 时有效 默认值Ymd
savePath 上传文件的保存路径
autoCheck 是否自动检查上传文件
uploadReplace 存在同名文件是否覆盖
saveRule 上传文件命名规则 留空则使用原来文件名保存
hashType 上传文件的哈希类型

[ 方法 ]
UploadFile类
upload($savePath='') 上传操作方法
getUploadFileInfo() 获取上传成功的文件信息
getErrorMsg() 获取最近一次的错误信息

PHP代码
import( "ORG.Net.UploadFile" );  
$upload  =  new  UploadFile();  
//设置上传文件大小  
$upload ->maxSize  = 32922 ;  
//设置上传文件类型  
$upload ->allowExts  =  explode ( ',' , 'doc,rar,txt' );  
//设置附件上传目录  
$upload ->savePath =   '../Public/Uploads/' ;   
//执行上传操作  
if (! $upload ->upload()) {  
    //捕获上传异常  
    $this ->error( $upload ->getErrorMsg());                 
} else {   
    $this ->success( '文件上传成功!' );  

原创粉丝点击