牛骨文教育服务平台(让学习变的简单)
博文笔记

Thinkphp多图上传只能传一张

创建时间:2017-03-12 投稿人: 浏览次数:213

在用thinkphp做多图上传的时候,按照官方文档的写法修改表单,

如果需要使用多个文件上传,只需要修改表单,把

  1. <input type="file" name="photo">

改为

  1. <input type="file" name="photo1">
  2. <input type="file" name="photo2">
  3. <input type="file" name="photo3">

或者

  1. <input type="file" name="photo[]">
  2. <input type="file" name="photo[]">
  3. <input type="file" name="photo[]">

两种方式的多附件上传系统的文件上传类都可以自动识别。


然后方法:

$upload = new ThinkUpload();// 实例化上传类

$upload->maxSize   =     3145728;// 设置附件上传大小

$upload->exts      =     array("jpg", "gif", "png", "jpeg");// 设置附件上传类型

$upload->rootPath  =     "./Public/img/good/"; // 设置附件上传根目录

$upload->savePath  =     ""; // 设置附件上传(子)目录

$upload->autoSub   =     false;   //不自动新建子目录

$upload->replace = true;//若同名则覆盖

$upload->saveName = date("Y-m-d")."_".mt_rand();


却发现怎么上传都只能上传一张,


研究了半天,


原来是要把saveName写成

$upload->saveName = array("uniqid","");   //表示唯一


但是这样子好像就没有办法自定义名称了,


还有表单按官方第一种数字的写法是无效的,必须第二种photo[ ]这样写才有效,不知道为什么,


不知道哪位大神懂的,请赐教。

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。