在上传过程中,PHP在哪里保存临时文件?
我正在Windows上使用XAMPP。通过打印在上传过程中,PHP在哪里保存临时文件?,php,Php,我正在Windows上使用XAMPP。通过打印$\u文件[“文件”][“tmp\u名称”],临时文件似乎保存在C:\xampp\tmp\phpABCD.tmp。但是我在服务器的文件系统上看不到它。但是,可以通过move\u-uploaded\u-file()、rename()或copy()移动或复制文件。那么,在上传过程中,PHP实际上在哪里保存临时文件呢?它是在PHP.ini文件的upload\u tmp\u dir中指定的。它在使用后会被系统自动删除。它会将它保存在$\u FILES[“fi
$\u文件[“文件”][“tmp\u名称”]
,临时文件似乎保存在C:\xampp\tmp\phpABCD.tmp。但是我在服务器的文件系统上看不到它。但是,可以通过move\u-uploaded\u-file()
、rename()
或copy()
移动或复制文件。那么,在上传过程中,PHP实际上在哪里保存临时文件呢?它是在PHP.ini文件的upload\u tmp\u dir
中指定的。它在使用后会被系统自动删除。它会将它保存在$\u FILES[“file”][“tmp\u name”]
中指定的路径,但会在脚本执行完毕后将其删除。如果要保留文件,您可以将其移动到其他位置。php将所有临时文件(包括上载的文件)存储在php.ini中指定的临时文件目录中。请注意,对于上载,这些文件可能会在上载到的脚本终止后立即删除(因此,除非您延迟该脚本,否则您可能不会看到上载的文件)。另一个原因可能是文件只是隐藏在文件系统中
因此,如果要查看文件,可能需要确保在资源管理器中看到所有隐藏的文件,并在需要查找文件时延迟脚本。from,“…上载的文件将继承
php.ini
的指令upload\u tmp\u dir
中指定的目录权限。如果未设置此指令,将使用默认的C:\Windows\Temp…”您可以通过打印检查php当前将Temp文件保存到哪里$\u文件[“文件”][“tmp\u名称”]
sys_get_temp_dir()
请注意,该文件以二进制形式保存在
$\u FILES[“file”][“tmp\u name”]
中,因此您可以使用file\u get\u contents
打开它,如果它是图像或类似的内容…使用移动上传的文件(文件,路径)
,指定文件和要存储文件的路径
将创建并存储该文件的副本。如果您询问文件位置,则取决于服务器的设置。但如果您询问文件是先保存在本地系统中还是先保存在服务器中。然后回答是保存在服务器的临时文件夹中。谢谢“但在脚本执行完毕后将其删除”。“这并不能回答给定的问题。请看一下其他答案,特别是OP接受的答案“二进制”是什么意思?是否有其他方法保存文件?