如何在Codeigniter中上传文件名时添加前缀?

时间:2012-01-17 12:09:01

标签: codeigniter file-upload filenames prefix

我的网站上有一个文件上传表单,并希望在用户上传照片时在文件名的开头添加前缀。

我已经为上传设置了配置(见下文),但我不确定如何设置前缀。

我最好不要打扰['encrypt_name'],因为这样可以节省我制作唯一名称的时间和精力,但前缀为加密名称的开头。我将把用户ID添加到开头。

    $config['upload_path'] = $upload_path;
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '100';
    $config['max_width']  = '1024';
    $config['max_height']  = '768';
    $config['encrypt_name'] = true;

    $this->load->library('upload', $config);

总是非常感谢帮助。

1 个答案:

答案 0 :(得分:4)

使用$ this-> upload-> data()获取文件名可能最简单,然后使用php rename()将id添加到开头。

这样的事情:

$upload_data = $this->upload->data();
rename(
    $upload_data['full_path'],
    $upload_data['file_path'].'/'.$user_id.'_'.$upload_data['orig_name']
);