【问题标题】:How to set the filename, but the file extension while uploading files in CodeIgniter在CodeIgniter中上传文件时如何设置文件名,但文件扩展名
【发布时间】:2012-10-09 15:49:13
【问题描述】:

$config['file_name'] 允许我们设置文件名,同时在 CodeIgniter 中上传文件。在这里,我们需要编写带有文件扩展名的文件名。例如,filename.pdffilename.zip。我想设置文件名,但扩展名。因此,如果有人上传 pdf 文件,文件名将是 myfilename.pdf。如果有人上传 zip 文件,文件名将是 myfilename.zip

【问题讨论】:

    标签: php codeigniter file-upload


    【解决方案1】:

    像这样在控制器中开始上传内容,您可以随意命名。只需将“new_file_name”替换为您希望调用的任何内容。确保将 do_upload() 函数变量也更改为文件输入的名称。

    if ($this->upload->do_upload('your_filename')) {
                $img_data=$this->upload->data();
                $new_imgname='new_file_name'.$img_data['file_ext'];
                $new_imgpath=$img_data['file_path'].$new_imgname;
                rename($img_data['full_path'], $new_imgpath);
    

    【讨论】:

    • 图像很可能仍会在浏览器中正确解析,但如果您将 pdf 压缩为 zip,除非您将 ext 转换回来,否则将无法正常工作
    • 哦,是的。不要误解我在上面使用的变量名。我刚刚提取了一些我用于此的代码,这些代码恰好用于图像文件上传。您可以使用它重命名任何文件类型。我认为他只是想在将文件上传到服务器时更改文件名并保留扩展名,但我可能错了。
    • 重命名文件名是我想到的解决方案。感谢您对其进行验证。
    猜你喜欢
    • 2015-02-18
    • 1970-01-01
    • 1970-01-01
    • 2011-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    相关资源
    最近更新 更多