当我使用这些功能时有区别吗?为什么我要使用一个而不是另一个...
问问题
11140 次
2 回答
45
copy()
复制文件 - 您现在有 2 个文件,对于大文件,这可能需要很长时间rename()
更改文件的名称,这可能意味着在目录之间移动它。move_uploaded_file()
与 基本相同rename()
,但它只适用于通过 PHP 的上传机制上传的文件。这是一项安全功能,可防止用户欺骗您的脚本向他们显示与安全相关的数据。
以后,我建议您自己在PHP 手册中查找此类信息。
于 2010-10-13T13:21:29.133 回答
10
我在以下手册中找到了这一点move_uploaded_file()
:
Florian S. 在 H. an der E. [.de]在 17-Aug-2008 09:02
move_uploaded_file(在我的设置中)总是生成文件
0600
(rw- --- ---
)并由运行网络服务器的用户(所有者和组)拥有。即使该目录对组权限设置了一个粘性位!我找不到任何设置来通过 php.ini 甚至使用umask()
.我希望服务器上的普通用户能够访问
tar cjf
目录 .. 这将在完全由 webserver-process-user 拥有的文件上失败;该copy(from, to)
功能虽然服从粘性位!
所以看起来copy
和rename
做一个稍微不同的工作。
于 2010-10-13T13:23:44.293 回答