PHP中文件上传(FileUpload)函数的使用方法
发布时间:2023-07-06 14:27:56
文件上传(FileUpload)是指将本地计算机上的文件上传到服务器上。在PHP中,可以使用$_FILES数组和move_uploaded_file()函数来实现文件上传。
下面是文件上传的使用方法:
1. 在HTML表单中设置文件上传的input元素:
<form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="fileToUpload" id="fileToUpload"> <input type="submit" value="Upload File" name="submit"> </form>
input元素的type属性设置为file,name属性设置为fileToUpload,这样在提交表单时,上传的文件就会被放置在$_FILES数组中的fileToUpload索引下。
2. 在服务器端的PHP文件中处理文件上传:
<?php
$targetDir = "uploads/";
$targetFile = $targetDir . basename($_FILES["fileToUpload"]["name"]);
// 检查文件类型
$fileType = strtolower(pathinfo($targetFile, PATHINFO_EXTENSION));
if($fileType != "jpg" && $fileType != "png" && $fileType != "jpeg" && $fileType != "gif") {
echo "只允许上传jpg、png、jpeg和gif文件类型!";
}
// 改名并保存文件
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $targetFile)) {
echo "文件已成功上传!";
} else {
echo "文件上传失败!";
}
?>
首先,设置目标目录(例如uploads/)和目标文件路径。然后,使用$_FILES数组的["fileToUpload"]["name"]索引,获取上传文件的原始文件名,并使用basename()函数将其与目标目录拼接起来,得到上传文件的目标路径。
接下来,使用strtolower()函数将文件类型转换为小写,并使用pathinfo()函数获取上传文件的扩展名,然后进行文件类型的判断。
最后,使用move_uploaded_file()函数将上传文件从临时目录移动到目标目录。move_uploaded_file()函数的 个参数是临时文件的路径,可以通过$_FILES数组的["fileToUpload"]["tmp_name"]索引获取;第二个参数是目标文件的路径,即目标目录拼接上传文件的原始文件名。如果移动成功,返回true,否则返回false。
以上就是PHP中文件上传函数的使用方法。通过上述步骤,您可以实现文件上传功能,并将上传的文件保存在指定的目录中。
