PHP可以通过以下几种方式实现文件上传和下载:
文件上传:
<input type="file">
标签在前端创建文件上传表单;$_FILES
超全局数组来获取上传的文件信息;move_uploaded_file()
函数将文件从临时目录移动到指定的目录。文件下载:
header()
函数设置文件的Content-Type、Content-Disposition和Content-Length等头信息;readfile()
函数将文件内容输出到浏览器。下面是一个简单的示例代码:
文件上传的HTML表单:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="上传">
</form>
文件上传的PHP处理脚本(upload.php):
<?php
if ($_FILES['file']['error'] === UPLOAD_ERR_OK) {
$tempFile = $_FILES['file']['tmp_name'];
$targetFile = 'uploads/' . $_FILES['file']['name'];
move_uploaded_file($tempFile, $targetFile);
echo '文件上传成功!';
} else {
echo '文件上传失败!';
}
?>
文件下载的PHP处理脚本(download.php):
<?php
$fileName = 'path/to/file.pdf';
$fileSize = filesize($fileName);
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . basename($fileName) . '"');
header('Content-Length: ' . $fileSize);
readfile($fileName);
?>
以上代码中的uploads/
是存放上传文件的目录,可以根据实际情况进行修改。在实际应用中,还需要考虑文件上传的安全性、文件类型限制、文件大小限制等问题。
上一篇:php如何实现删除文章
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站