php - copy,rename和move_uploaded_file之间的差异

tho*_*mas 14 php upload file-upload move file-rename

使用这些功能时是否存在差异?我为什么要用一个而不是另一个......

Mic*_*rdt 43

  • copy() 复制文件 - 您现在有2个文件,对于大文件,这可能需要很长时间
  • rename() 更改文件的名称,这可能意味着在目录之间移动它.
  • move_uploaded_file()基本相同rename(),但它只适用于通过PHP上传机制上传的文件.这是一项安全功能,可防止用户欺骗您的脚本向其显示与安全相关的数据.

将来,我建议您自己在PHP手册中查找这些信息.


ITr*_*ubs 9

我在以下手册中找到了这个move_uploaded_file():

弗洛里安S.在H. an der E. [.de]于2008年8月17日09:02

move_uploaded_file(在我的设置中)总是生成文件0600(rw- --- ---)并由运行webserver(所有者AND组)的用户拥有.即使该目录的粘性位设置为组权限!我找不到任何设置来改变这个通过php.ini甚至使用umask().

我希望服务器上的常规用户能够访问tar cjf目录..这对于webserver-process-user完全拥有的文件会失败; 虽然copy(from, to)功能服从粘性位!

所以看起来copyrename做一个稍微不同的工作.