如何通过PHP获取input type file选择的文件原始路径?
关于PHP获取本地文件原始路径的解答
很遗憾,没有纯PHP的方法能够获取用户选择的本地文件的原始路径,核心原因来自浏览器的安全限制:
- 现代浏览器为了保护用户本地文件系统的隐私,在文件上传流程中只会将文件内容发送到服务器,绝对不会暴露真实的本地文件路径。
- 你通过PHP的
$_FILES数组能获取到的相关信息只有:tmp_name:文件上传到服务器后临时存储的路径name:文件在本地的原始文件名(不包含任何路径信息)type:文件的MIME类型size:文件的字节大小
- 哪怕你想借助前端JavaScript辅助,现在主流浏览器也会返回类似
C:\fakepath\filename.ext的伪路径,根本拿不到真实的本地路径,自然也无法传递给PHP处理。
总结来说,如果你需要处理上传的文件,只能基于$_FILES['tmp_name']来操作(比如用move_uploaded_file($_FILES['your_file']['tmp_name'], '服务器目标路径')将临时文件保存到指定位置),但纯PHP层面确实无法获取用户本地的原始文件路径。
内容的提问来源于stack exchange,提问作者Ravi Oza
相关产品推荐
相关产品推荐

