You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PHP上传文件时如何自定义修改保存文件名相关问题咨询

PHP文件上传自定义保存名称实现方案

你可以通过拆分原文件名的主体和扩展名,拼接自定义后缀后生成新的文件名,修改后的代码如下:

for($index = 0;$index < count($_FILES['files']['name']); $index++){
        
    // 获取原文件名
    $filename = $_FILES['files']['name'][$index];
    // 拆分文件名主体和扩展名
    $fileInfo = pathinfo($filename);
    $baseName = $fileInfo['filename'];
    $extension = $fileInfo['extension'];
    // 拼接自定义新文件名,示例为加_2021后缀
    $newFileName = $baseName . '_2021.' . $extension;
    // 如果你需要动态使用当前年份,替换为下方代码即可
    // $newFileName = $baseName . '_' . date('Y') . '.' . $extension;
            
    // 用新文件名生成保存路径
    $path = '../pdf/'.$newFileName;
                
    // 上传文件
    if(!move_uploaded_file($_FILES['files']['tmp_name'][$index],$path)){
        // ERROR
        exit;
    }
}

关键逻辑说明

  • 用PHP内置的pathinfo()函数可以快速获取文件的名称主体、扩展名等信息,避免手动切割字符串出现的格式错误
  • 若需要避免多个同名文件上传时出现覆盖问题,可以在文件名中额外拼接唯一标识,例如毫秒级时间戳、随机字符串:
    // 示例:拼接年份+6位随机数,避免重名
    $newFileName = $baseName . '_' . date('Y') . '_' . random_int(100000,999999) . '.' . $extension;
    

内容的提问来源于stack exchange,提问作者Trombone0904

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 21:48:00