要编写一个文件上传函数,可以使用PHP的内置函数move_uploaded_file()
来实现。以下是一个简单的示例:
<?php
function uploadFile($file, $targetDirectory) {
$targetFile = $targetDirectory . basename($file['name']);
$uploadOk = 1;
$fileType = strtolower(pathinfo($targetFile,PATHINFO_EXTENSION));
// 检查文件类型
if($fileType != "php" && $fileType != "txt" && $fileType != "pdf") {
echo "只允许上传 PHP, TXT 或 PDF 文件.";
$uploadOk = 0;
}
// 检查文件大小
if ($file['size'] > 500000) {
echo "文件大小超过限制.";
$uploadOk = 0;
}
// 检查文件是否已存在
if (file_exists($targetFile)) {
echo "文件已存在.";
$uploadOk = 0;
}
// 检查上传是否成功
if ($uploadOk == 0) {
echo "文件上传失败.";
} else {
if (move_uploaded_file($file['tmp_name'], $targetFile)) {
echo "文件上传成功.";
} else {
echo "文件上传失败.";
}
}
}
?>
使用示例:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_FILES['file'])) {
uploadFile($_FILES['file'], '/path/to/target/directory/');
}
}
?>
请注意,这只是一个简单的示例,并没有进行完整的文件上传安全性检查和过滤。在实际应用中,您应该根据您的需求添加更多的安全性措施,例如检查文件类型、大小、文件名等,并确保目标目录具有适当的权限。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站