用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: liren
收起左侧

[已解决] CI 的文件上传类有bug!

[复制链接]
发表于 2012-8-29 19:39:38 | 显示全部楼层
上传文件的时候的如果没有设置$config['encrypt_name'] = true;遇到重名的情况会在原来名字上的基础上加上1,如果设置了$config['encrypt_name'] = true;//随机命名,ci会随机命名上传文件的名字可以查看system/libraries/Upload.php里面set_filename方法中大约392到396中有mt_srand();$filename = md5(uniqid(mt_rand())).$this->file_ext;这是在设置$config['encrypt_name'] = true的情况下随机命名,如果你想换成自己的命名方式,例如当前时间,$filename=time().$this->file_ext;即可
发表于 2012-8-30 10:48:27 | 显示全部楼层
本帖最后由 孤独求学人 于 2012-8-30 10:51 编辑
孤独求学人 发表于 2012-8-29 19:39
上传文件的时候的如果没有设置$config['encrypt_name'] = true;遇到重名的情况会在原来名字上的基础上加上1 ...

昨天的回复我又仔细看了下有些问题需要更正!ci上传文件的时候,默认有个设置为$config['overwrite'] = false也就是说当配到上传文件的名字重名的时候不覆盖也就是你看到名字在原来的基础上加1的情况,如果你想使用系统设置重新命名上传文件的话,你可以设置$config['encrypt_name'] = true即可使用系统的命名方式进行命名,如果你想指定自己的命名方式,你可以设置$config['file_name']这个选项但是必须设置$config['encrypt_name']的值为false,例如以当前时间进行命名$config['file_name'] = time();

本版积分规则