用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1330|回复: 1
收起左侧

[版本 3.x] Upload 多图片上传为何name一致?

[复制链接]
发表于 2015-6-16 11:59:20 | 显示全部楼层 |阅读模式
本帖最后由 coderuner 于 2015-6-16 12:07 编辑
PHP复制代码
 $this->CI->load->library('upload');
foreach($_FILES as $key=>$value){
     if($value['name']!=''){
           $type = strstr($value['name'],'.');
           $super = date("YmdHis").uniqid(); //时间加上随机数
           $fileName = $useType."_".$super.'.'.$type; //生成随机名
           $config = array(); //图片存储配置
           $config['upload_path'] = "assets/upload/";
           $config['allowed_types'] = 'gif|jpg|png|jpeg';
           $config['file_name'] = $fileName;
           $this->CI->upload->initialize($config);
           if(!$this->CI->upload->do_upload($key)){
                 //$error = array('error' => $this->upload->display_errors());
                 return false;
                 exit();
            }else{
                 $data = array('upload_data' => $this->CI->upload->data());
                 log_message('INFO','全地址:'.$data['upload_data']['file_name']);
            }
       }
}
 
复制代码

---------------------------------------------------------------------------------------------------------------------------------
repair_20150616114515557f9bcb4f268_.jpg
repair_20150616114515557f9bcb4f268_1.jpg
repair_20150616114515557f9bcb4f268_2.jpg
repair_20150616114515557f9bcb4f268_3.jpg

这里后面多出的_1_2应该是CI 自动避免同名自动添加的,疑问是 上面每次循环都用了随机产出名字,为何最后图片还是都是取的第一次的随机数名字??? 求大神解惑!!!




 楼主| 发表于 2015-6-16 12:30:13 | 显示全部楼层
由于多图片上传时候,产出图片是在同一秒内,所以会产生这个同名原因.
rand(1,99999999);加入super后缀,发现名字已改变。确实是执行了...但是速度极快!

本版积分规则