PHP 大文件上传代码(500M以上)
在PHP中处理大文件上传,你需要确保服务器配置能够处理大型上传。以下是一个PHP脚本示例,用于处理大文件上传(假设文件大小超过500MB):
<?php
// 设置超时时间和内存大小
set_time_limit(300); // 5分钟
ini_set('memory_limit', '512M'); // 根据需求调整
// 配置上传目录和文件名
$uploadDir = 'uploads/';
$uploadFile = $uploadDir . basename($_FILES['userfile']['name']);
// 检查是否有错误发生
if ($_FILES['userfile']['error'] !== UPLOAD_ERR_OK) {
die('上传发生错误!');
}
// 移动文件到指定目录
if (!move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadFile)) {
die('文件上传失败!');
}
echo "文件上传成功!";
?>
确保在php.ini配置文件中设置了以下值,以处理大文件上传:
upload_max_filesize = 500M
post_max_size = 500M
memory_limit = 512M
max_execution_time = 300
这些值应该根据你的具体需求和服务器性能进行调整。
此外,你还需要在HTML表单中设置正确的enctype
属性和足够的超时时间:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="524288000" />
<input type="file" name="userfile" />
<input type="submit" value="上传文件" />
</form>
注意,对于超大文件上传,你可能还需要考虑网络问题、服务器带宽和稳定性等因素。
评论已关闭