php 上传更改文件名 (你怎样在PHP中上传并更改文件名?)

在开发 Web 应用程序时,文件上传可能是一个非常重要的功能。PHP 提供了内置函数来处理上传文件。然而,在上传文件时,有时需要更改文件名以防止文件名冲突或为了更好的文件管理。在这篇文章中,我们将介绍如何在 PHP 中上传文件并更改文件名。

  1. HTML 表单

首先,我们需要在 HTML 表单中添加一个文件上传字段。在表单中添加 “enctype = “multipart/form-data” 属性,以便服务器可以处理文件上传。

“`html

“`

  1. PHP 代码

接下来,我们需要编写 PHP 代码来处理上传文件并更改文件名。首先,检查文件是否存在并且没有错误,然后将文件从临时目录移动到指定的目录,并为文件设置新名称。在本例中,我们将文件名更改为当前时间戳加上文件扩展名。

“`php
if(isset($FILES[‘file’])) {
$errors = array();
$file
name = $FILES[‘file’][‘name’];
$file
size = $FILES[‘file’][‘size’];
$file
tmp = $FILES[‘file’][‘tmpname’];
$filetype = $FILES[‘file’][‘type’];

// 检查文件扩展名
$fileext = strtolower(end(explode(‘.’,$FILES[‘file’][‘name’])));
$extensions = array(“jpeg”,”jpg”,”png”);

if(inarray($fileext,$extensions)=== false){
$errors[]=”文件扩展名不允许,请上传 JPEG 或 PNG 文件。”;
}

// 检查文件大小(最大为 2MB)
if($file_size > 2097152){
$errors[]=’文件大小不能超过 2MB’;
}

// 如果没有错误,则处理上传文件
if(empty($errors)){
$newfilename = time() . ‘.’ . $fileext;
move
uploadedfile($filetmp,”uploads/”.$newfilename);
echo “文件已上传并更改名称为 “.$newfilename;
}else{
print_r($errors);
}
}
“`

  1. 文件保存位置

在上面的代码中,“uploads”是要保存上传文件的目录。请确保该目录存在并具有写入权限。否则,文件上传将失败并引发错误。

可以使用以下 PHP 代码检查目录是否存在并创建它(如果不存在):

“`php
$directory = “uploads/”;

if(!is_dir($directory)){
mkdir($directory, 0777, true);
}
“`

  1. 总结

在 PHP 中,上传文件并更改文件名是一项相当简单的任务。只需在 HTML 表单中添加文件上传字段,处理 PHP 代码并指定要保存文件的目录,就可以完成该任务。在文件上传和更改名称之前,始终记住检查文件大小,类型和扩展名,以确保上传的文件符合预期。

如有侵犯您的权益请邮件发送:rainpro@foxmail.com,站长看到会第一时间处理
客栈猫 » php 上传更改文件名 (你怎样在PHP中上传并更改文件名?)

提供最优质的资源集合

立即查看 了解详情