首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >上传的文件保存前如何重命名?

上传的文件保存前如何重命名?
EN

Stack Overflow用户
提问于 2011-08-10 05:07:02
回答 2查看 2.1K关注 0票数 1

我正在使用下面的代码片段来获取文件名和扩展名,这是可行的,但是我如何重命名文件,以便文件名等于bake23 +文件扩展名。

代码语言:javascript
运行
复制
  $variable = 'baKe23';


  $filename = $_FILES['filename']['name'];
  $ext = $_FILES["filename"]["type"];

如果文件名已存在,则重命名:

代码语言:javascript
运行
复制
       $filename = $_FILES['filename']['name']; 
  $extension = substr($filename, strpos($filename,'.'), 
  strlen($filename)-1);

         $sql="SELECT filename FROM documents WHERE person_id= '$pid'";  

     $result=mysql_query($sql);

    $query = mysql_query($sql) or die ("Error: ".mysql_error());

    if ($result == "")
    {
    echo "";
     }
    echo "";


   $rows = mysql_num_rows($result);

   if($rows == 0)
   {
  print("");

   }
   elseif($rows > 0)
   {
  while($row = mysql_fetch_array($query))
   {

  $existing = $row['filename'];

  print("");
   }

    }

    if ( $filename === $existing ) {
$filename = $rnd_id.strrchr($_FILES['filename']['name'], ".");

   } else {
   $filename = $_FILES['filename']['name'];;
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-10 05:10:43

从提交的文件名中获取扩展名并将其添加到您的变量中:

代码语言:javascript
运行
复制
$filename = basename($filename);
$filename = $variable . (string) strrchr($filename, '.');

编辑:字面意思是您编辑过的问题的

代码语言:javascript
运行
复制
$filename =  $variable . '.' . $ext;

但是,考虑到我将上传一个名为banana-smiley.gif的图像,将会发生以下情况:

代码语言:javascript
运行
复制
$filename = 'baKe23.image/gif';

我想这不是你想要的。您甚至根本不应该依赖$_FILES[*]["type"]。您需要做的是检查每个上传的文件(确定类型,验证类型,对上传的文件运行病毒检查程序)。

与此相关的问题是和。

票数 4
EN

Stack Overflow用户

发布于 2011-08-10 05:09:04

代码语言:javascript
运行
复制
$variable = 'baKe23';
$filename = $_FILES['filename']['name'];
$filename = $variable.strrchr($_FILES['filename']['name'], ".");

代码语言:javascript
运行
复制
$variable = 'baKe23';
$filename = $_FILES['filename']['name'];
$filename = $variable.".".pathinfo($filename, PATHINFO_EXTENSION);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7003004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档