ThinkPHP文件上传类的使用.docVIP

  • 9
  • 0
  • 约8.4千字
  • 约 9页
  • 2017-02-28 发布于湖北
  • 举报
ThinkPHP文件上传类的使用 上传类使用ORG类库包中的Net.UpdateFile类,最新版本的上传类包含的功能如下(有些功能需要结合ThinkPHP系统其他类库): 1.基本上传功能 2.支持批量上传 3.支持生成图片缩略图 4. 自定义参数上传 5.上传检测(包括大小、后缀和类型) 6.支持上传类型、附件大小、上传路径定义 7.支持哈希或者日期子目录保存上传文件 8.上传图片的安全性检测 9.支持上传文件命名规则 10. 支持对上传文件的Hash验证 在ThinkPHP中使用上传功能无需进行特别处理。例如,下面是一个带有附件上传的表单提交: form METHOD=POST action=“/Manual/upload” enctype=“multipart/form-data” ? input type=“text” NAME=“name” ? input type=“text” NAME=“email” ? input type=“file” name=“photo” ? input type=“submit” value=“保 存” ? /form 复制代码 注意表单的Form标签中一定要添加 enctype=”multipart/form-data” 文件才能上传。因为表单提交到当前模块的upload操作方法,所以我们在模块类里面添加下面的upload方法即可: Public function upload(){? import(“ORG.Net.UploadFile”);? $upload = new UploadFile(); // 实例化上传类? $upload-maxSize = 3145728 ; // 设置附件上传大小? $upload-allowExts = array(‘jpg’, ‘gif’, ‘png’, ‘jpeg’); // 设置附件上传类型? $upload-savePath = ‘./Public/Uploads/’; // 设置附件上传目录? if(!$upload-upload()) { // 上传错误 提示错误信息? $this-error($upload-getErrorMsg());? }else{ // 上传成功 获取上传文件信息? $info = $upload-getUploadFileInfo();? }? // 保存表单数据 包括附件数据? $User = M(“User”); // 实例化User对象? $User-create(); // 创建数据对象? $User-photo = $info[0][savename]; // 保存上传的照片 根据需要自行组装? $User-add(); // 写入用户数据到数据库? $this-success(“数据保存成功!”);? } 复制代码 首先是实例化上传类 import(“ORG.Net.UploadFile”);? $upload = new UploadFile(); // 实例化上传类 复制代码 实例化上传类之后,就可以设置一些上传的属性(参数),支持的属性有: maxSize: 文件上传的最大文件大小(以字节为单位)默认为-1 不限大小 savePath:文件保存路径,如果留空会取UPLOAD_PATH常量定义的路径 saveRule:上传文件的保存规则,必须是一个无需任何参数的函数名,例如可以是 time、 uniqid com_create_guid 等,但必须能保证生成的文件名是唯一的,默认是uniqid hashType:上传文件的哈希验证方法,默认是md5_file autoCheck:是否自动检测附件,默认为自动检测 uploadReplace:存在同名文件是否是覆盖 allowExts:允许上传的文件后缀(留空为不限制),使用数组设置,默认为空数组 allowTypes:允许上传的文件类型(留空为不限制),使用数组设置,默认为空数组 thumb:是否需要对图片文件进行缩略图处理,默认为false thumbMaxWidth:缩略图的最大宽度,多个使用逗号分隔 thumbMaxHeight:缩略图的最大高度,多个使用逗号分隔 thumbPrefix:缩略图的文件前缀,默认为thumb_? ?(如果你设置了多个缩略图大小的话,请在此设置多个前缀 ) thumbSuffix:缩略图的文件后缀,默认为空? ?(如果你设置了多个缩略图大小的话,请在此设置多个后缀 ) thumbPath:缩略图的保存路径,留空的话取文件上传目录本身 thumbFile:指定缩略图的文件名 thumbRemoveOrigin:生成缩略图后是否删除原图 autoSub:是否使用子目录保存上传文件 subT

文档评论(0)

1亿VIP精品文档

相关文档