Как загрузить несколько файлов в codeigniter и переименовать каждый файл?

#php #codeigniter

#php #codeigniter

Вопрос:

привет, я хочу загрузить несколько файлов с помощью 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.»_».($ i 1); для переименования каждого файла..

Ответ №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;