Codeigner重命名图像文件不起作用



我正在使用codeigniter,并尝试上传图像文件。

一切都很好,但我无法将上传的文件名更改为自定义名称。

在过去的5个小时里,我什么都试过了,什么都不起作用。

如果有人能帮忙,那就太好了。

我只需要将上传的文件重命名为custom_name.jpg

控制器文件

public function uploadimage() {
$config['overwrite'] = TRUE;
$config['file_name'] = 'custom_name.jpg';
$config["allowed_types"] = 'jpg|jpeg|png|gif';
$config['upload_path'] = './uploads/';
$config["max_size"] = 1024;
$config["max_width"] = 400;
$config["max_height"] = 400;
$this->load->library('upload', $config);
if(!$this->upload->do_upload()) {               
$this->data['error'] = $this->upload->display_errors();
} else {
echo "success";                                      
}  
}

VIEW文件

<?php echo form_open_multipart('admin/uploadimage'); ?>    
<?php echo form_upload('userfile'); ?><br />
<?php echo form_submit('upload', 'Upload');?>    
<?php echo form_close(); ?>

只需从file_name中删除自定义扩展名,并附加上传文件的扩展名。

public function uploadimage() {
$config['overwrite'] = TRUE;
$config['file_name'] = 'custom_name';
$config["allowed_types"] = 'jpg|jpeg|png|gif';
$config['upload_path'] = './uploads/';
$config["max_size"] = 1024;
$config["max_width"] = 400;
$config["max_height"] = 400;
$this->load->library('upload', $config);
if(!$this->upload->do_upload()) {               
$this->data['error'] = $this->upload->display_errors();
} else {
echo "success";                                      
}  

}

上传成功后,您还可以使用rename功能对文件进行重命名。

还要检查这些。

上载目录是可写的,路径可以是绝对路径,也可以是相对路径。

如果您自动加载类$this->upload->initialize($config),请通过调用initialize()方法设置首选项

你对文件大小有一些限制,也要检查你的图像大小。

最新更新