【问题标题】:CodeIgniter multiple file upload - unique filenameCodeIgniter 多文件上传 - 唯一文件名
【发布时间】:2016-08-28 17:23:19
【问题描述】:

我做了一个函数,它成功地上传了[多个]文件。但是如果我尝试更改文件名,文件名会被更改,但只有最后选择的文件会被上传。

这是我的代码。

<?php
    $files = $_FILES['userfile'];
    $dir = './uploads/';
    foreach ($files['name'] as $key => $value) {
        $direction = $dir . $_FILES['userfile']['name'][$key];
        move_uploaded_file($_FILES['userfile']['tmp_name'][$key], $direction);
    }
?>

设法做到这一点

       $files = $_FILES['userfile'];
        $dir = './uploads/';
        foreach ($files['name'] as $key => $value) {

            $filename = $_FILES["userfile"]["name"][$key];

            $temp = explode(".", $filename);
            $newfilename = uniqid('',true).'.'.end($temp);
            $direction = $dir.$newfilename; 
            move_uploaded_file($_FILES['userfile']['tmp_name'][$key], $direction);
        }

问题出在microtime()

【问题讨论】:

标签: php codeigniter


【解决方案1】:

试试这个代码

//load date helper 
$this->load->helper('date');

$files = $_FILES['userfile'];
        $dir = './uploads/';
        foreach ($files['name'] as $key => $value) {

            $filename = $_FILES["userfile"]["name"][$key];

            $temp = explode(".", $filename);
            //
            $file_tempname = date('Y-m-d H:i:s');
            //
            $newfilename = $file_tempname.'.'.end($temp);

            $direction = $dir.$newfilename; 
            move_uploaded_file($_FILES['userfile']['tmp_name'][$key], $direction);
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    • 2013-07-31
    • 1970-01-01
    • 2012-05-25
    • 1970-01-01
    相关资源
    最近更新 更多