我正在使用内置的PHP函数copy()
将图像或文件上传到我的主机。
因此,我想知道为什么文件必须在上传到目的地之前移动到临时文件?
答案 0 :(得分:1)
为什么文件在上传到目的地之前必须移动到临时文件?
这就是PHP管理文件上传的方式;来自客户端(Web浏览器)的已发布正文以multipart/form-data
格式从Web服务器传递到PHP,然后对其进行解码。
由于此过程在脚本运行之前发生,因此PHP会将文件存储在由upload_tmp_dir
定义的临时位置。
顺便说一下,建议使用move_uploaded_file()
代替copy()
;它确保文件实际上传为当前请求的一部分。
答案 1 :(得分:0)
而是使用Move_uploaded_file。如果要在表单中上传带有文件标记的文件,则无法上传带有副本的文件。
使用move_uploaded_file,您可以利用错误处理,大小限制,文件类型限制等等。只需阅读链接。 语法是:
move_uploaded_file($source, $destination);
答案 2 :(得分:0)
当我们在html表单中使用文件字段时,它会将文件保存到临时文件夹中。 您需要使用move_upload_fle函数将文件从临时目录复制到目标目录。
move_uploaded_file($source, $destination);