php中文网

如何用PHP正确地将上传文件移动到指定位置?

php中文网

如何将输入文件上传到不同的位置

如何将选定的文件从 input 文件域传输到另一个位置?

问题分析

如问题所述,使用 input 元素上传文件并将其路径存储在 repath 变量中。然后,使用 ajax 将路径传递到 php 脚本,并在 php 脚本中尝试使用 rename 函数将文件移动到新路径。但是,此方法不起作用。

立即学习“PHP免费学习笔记(深入)”;

解决方案

正确的解决方案是使用 html form 元素和 multipart/form-data 编码类型,如下所示:

<form action='xx.php' method='post' enctype='multipart/form-data'>
  <input type='file' name='pic' accept='image/*' id='file'/>
  <input type='submit' name='btn'/>
</form>

在 php 脚本中,使用 $_files 数组接收文件信息:

$temporary_path = $_FILES['pic']['tmp_name'];
$new_path = './1.jpg';
if (move_uploaded_file($temporary_path, $new_path)) {
  // 移动成功
} else {
  // 移动失败
}

move_uploaded_file 函数将文件从临时位置移动到指定的路径。

以上就是如何用PHP正确地将上传文件移动到指定位置?的详细内容,更多请关注php中文网其它相关文章!