$dest=$dest_dir.'/'.date("ydms")."_".$f['name'];//设置文件名为日期加上文件名避免重复
这样只是日期+原始的文件名,
有没什么函数可以截取原始的文件名,比如:我上传的文件名是 1002.jpg 我可以截取右边4个字节.jpg +当前的
date("ydms")日期作为新的文件名字,

解决方案 »

  1.   

    截取后缀名?
    如果限定了上传文件类型了   对$_FILES['filename']['name']进行正则匹配吧 或者字符串截取
    要不就是判断$_FILES['userfile']['type'] 比如switch     ($_FILES['userfile']['type'])   
        {     
        case     "image/pjpeg":     
        $fileextname     =     "jpg";     
        break;     
        case     "image/gif":     
        $fileextname     =     "gif";     
        break;     
        case     "image/x-png":     
        $fileextname     =     "png";     
        break;     
        case     "application/x-shockwave-flash":     
        $fileextname     =     "swf";     
        break;     
        case     "text/plain":     
        $fileextname     =     "txt";     
        break;     
        case     "application/msword":     
        $fileextname     =     "doc";     
        break;     
        case     "application/x-zip-compressed":     
        $fileextname     =     "zip";     
        break;     
        }
      

  2.   

    日期仍然有可能重复的  我一般都是用timestamp再加上4位的随机字符,要是有用户id,还可以加上用户id
      

  3.   

    http://www.111cn.net/phper/22/218ee8fc5921d3479b70f5b138ce45cc.htm
    php文件上传
      

  4.   

    function getextension("文件名") {
    return strtolower(substr(strrchr("文件名", "."), 1));
    }//获取文件后缀名的方法
      

  5.   

    楼主所言我觉得有误差,如果是JPEG格式的呢?不就会出错了么,还是用正则比较好