php如何实现文件或文件夹的移动?可能有的朋友会想当然的认为可以使用文件上传函数move_uploaded_file,其实该函数并不能实现文件的移动。

php要实现文件或文件夹的移动,可以使用copy和unlink函数,或者是使用rename函数。请看下面具体实现方法。

php使用copy和unlink函数函数移动文件

先简单介绍copy函数和unlink函数:

copy — 拷贝文件

语法:

bool copy ( string $source , string $dest [, resource $context ] )

将文件从 source 拷贝到 dest。

unlink — 删除文件

语法:

bool unlink ( string $filename [, resource $context ] )

删除 filename。和 Unix C 的 unlink() 函数相似。 发生错误时会产生一个 E_WARNING 级别的错误。

下面来看一下如何使用copy和unlink实现文件的移动

$file='userfile/a/abc.txt'; //旧目录

$newFile='userfile/b/newabc.txt'; //新目录

copy($file,$newFile); //拷贝到新目录

/* http://www.manongjc.com/article/1303.html */

unlink($file); //删除旧目录下的文件

?>

php使用rename函数移动文件

php参考手册上是这样介绍rename函数的:

rename — 重命名一个文件或目录

语法

bool rename ( string $oldname , string $newname [, resource $context ] )

尝试把 oldname 重命名为 newname。

参数

oldname用于 oldname 中的封装协议必须和用于 newname 中的相匹配。

newname 新的名字。

context在 PHP 5.0.0 中增加了对上下文(Context)的支持。

rename用于移动文件或文件夹,实例如下:

rename("/tmp/www.txt", "/home/my_file.txt");

第一个参数放原地址,第二个参数放目标地址。

小结

上面两种方法都可以实现移动文件,但从性能上讲,rename方法更好,因为rename简单、方便、快捷,而且对于大文件,第一种方法可能会消耗很长时间。

php 移动文件夹,php实现移动文件或文件夹的两种方法相关推荐

  1. java 文件尾部_java 在file的尾部添加数据的两种方法总结

    java 在file的尾部添加数据的两种方法总结 问题描述: 在文件的末尾追加内容 方法1:利用RandomAccessFile类 1.将randomAccessFile模式设置为rw 2将rando ...

  2. linux 输出到文件 新,如何将Linux命令输出保存到文件的两种方法

    本篇文章分享了如何将Linux命令行输出保存到文件中.文章分享了两种方法:一种是使用Linux IO重定向符号,一种是使用tee命令.tee命令比Linux IO重定向符号更好用. 当您在Linux终 ...

  3. 服务器里文件表格如何自动备份,Excel电子表格自动备份的两种方法

    对于数据量大.数据重要性高的EXCEL文件,如果出现任何意外导致数据遭受损坏,那么,将是一件严重的问题. 平时我们在操作EXCEL时,应该养成良好的习惯,即让EXCEL自动备份,以防不测. 以下是两种 ...

  4. 合并BIN文件的两种方法

    合并BIN文件的两种方法 在单片机的开发过程中,经常需要将两个单独的BIN文件合并成一个文件,方便烧写和生产.下面结合STM32的IAP Bootloader Code和Application Cod ...

  5. MATLAB 保存imshow绘制图片到指定文件夹中的两种方法

    MATLAB 保存imshow绘制图片到指定文件夹中的两种方法 imwrite函数 imwrite(image,filename) imwrite(image,filename)是将图像数据image ...

  6. python删除空文件和文件夹_python 两种方法删除空文件夹

    第一种方法: import os def delete_gap_dir(dir): if os.path.isdir(dir): for d in os.listdir(dir): #print(&q ...

  7. 怎么在mac打开home文件夹? mac打开home文件夹的两种方法

    今天小编给大家带来怎么在mac打开home文件夹? mac打开home文件夹的两种方法教程,那么具体该怎么打开呢?下面我们就来看看mac打开home文件夹的两种方法,需要的朋友可以参考下.记得收藏哦 ...

  8. python获取绝对路径_python3中获取文件当前绝对路径的两种方法

    方法1: import sys print(sys.argv) 得到文件当前绝对路径字符串的一个列表 ['D:/pycharm/PracticeProject/ClientServerNetworki ...

  9. 文字转语音文件的两种方法

    文件转语音文件的两种方法.小伙伴们在日常的工作.学习或是生活当中,是否遇到过以下这种情况.在工作中每天要阅读大量文件资料,在学习中每天要阅读各种课文,在生活中也会观看各种小说.但是长时间的用眼阅读,就 ...

最新文章

  1. nodejs实现继承的简单代码示例
  2. wordpress-4.4.1 数据库表结构详解
  3. JS经典面试题03-引用类型连续赋值a.x = a = { n: 2 }
  4. Condition总结-CountDownLatch
  5. oracle正则匹配全部,sql – 返回Oracle中正则表达式的所有匹配项
  6. 【leetcode 简单】第四十二题 阶乘后的零
  7. 正式开通我的开源博客
  8. jenkins + Git 搭建持续集成环境
  9. 三个优秀的Android图表开源控件
  10. DelphiIE插件开发
  11. 大学英语六级考试题型分值分配、时间分配、做题策略
  12. icloud显示账户详情不可用_iCloud提示账户详情不可用怎么办 iphone提示账户详情不可用的解决方法...
  13. 长治南垂驾校科目二经验总结
  14. uniapp:一个多边形图片裁剪插件
  15. ASP.NET MVC身份认证与授权
  16. Java人民币小写转大写字符串
  17. 奇虎360前端面试题
  18. 程序员求职面试三部曲之一:选择合适的工作单位(转)
  19. 【Linux】Linux目录
  20. MyBatis发展历史

热门文章

  1. springboot+vue理发店美发店美容店服务预约商城管理系统
  2. fedora 显示器 输入信号超出范围
  3. 在线生成二维码的api接口
  4. 【裂缝识别】基于matlab计算机视觉断裂裂缝识别【含Matlab源码 2049期】
  5. Html5 head 与 body
  6. halcon,什么是标定?怎么标定?标定获得了什么?标定能干什么?
  7. mysql数据库学生成绩管理系统
  8. 有的程序员驱动光明世界,也有程序员成为了黑暗疆域的主宰!一个天才程序员的黑帮大佬人生
  9. Flask-WTF制作复杂表单例子
  10. 测试报告要求内容(标准)