嘿我想使用codeigniter上传多个文件..我获得了成功但现在我想在上传时重命名每个文件..我不能这样做..请帮助
这是我的代码..
if(isset($_FILES['userfile'])){
$config['upload_path'] = './resources/uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '1024';
$this->load->library('upload', $config);
$files = $_FILES;
$cpt = sizeof($_FILES['userfile']['name']);
for($i=0; $i < $cpt; $i++)
{
$file_name=time().$i."_".($i+1);
$_FILES['userfile']['name']= $files['userfile']['name'][$i];
$_FILES['userfile']['type']= $files['userfile']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['userfile']['error'][$i];
$_FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->do_upload();
}
我想要这个$ file_name = time()。$ i。&#34; _&#34;。($ i + 1);用于重命名每个文件..
答案 0 :(得分:1)
根据需要简单地将$file_name
分配给文件名,
$file_name = time().$i."_".($i+1);
$_FILES['userfile']['name'] = $file_name;
添加具有唯一名称的扩展程序
$ext = end((explode(".", $files['userfile']['name'][$i])));
$file_name = time().$i."_".($i+1).".".$ext;
$_FILES['userfile']['name'] = $file_name;