PHP中rename()函数的妙用讲解


Posted in PHP onFebruary 28, 2019

大家都知道,rename()函数可以对文件或目录进行重命名的操作。其实它还可以做很多事情。

熟悉unix的朋友应该知道shell命令mv,它相当与win32的移动,而且移动的同时可进行重命名。我发现,php的rename()函数就相当于mv,它不仅仅只有简单的重命名的功能,同样可以改变文件甚至整个目录的路径。

例如:

$oldpath ----文件或目录原来路径

$newpath ----新定义路径

那么 rename($oldpath,$newpath)就可以完成文件/目录移动的操作

经过我的测试,win32和unix的php4版本都支持这个功能。

另外,好象php4的win32版取消了unlink()函数。那么还可以巧用rename()函数来完成删除的操作,例如:

$path ---- 文件或目录路径

$tmp ---- tmp目录(/tmp)

用rename($path,$tmp) 将文件移动到tmp目录.

网上有一种方法是copy+unlink来移动文件,但是遇到大文件时会消耗大量时间,对性能不怎么友好,可以使用rename()来移动文件,速度非常快

关于rename()函数

bool rename ( string $oldname , string $newname [, resource $context ] )
尝试把 oldname 重命名为 newname,若操作成功则返回True,失败返回False。

注意:

1. 对于非空文件夹,只能在同一盘符下移动。

2. 对于空文件夹,rename()可以在不同盘符间移动。但是目标文件夹的父目录必须存在。

3. 对于文件,rename()也能在不同盘符之间移动。

实列代码:

rename("/file1/www.txt", "/file2/my_file.txt");

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
php Static关键字实用方法
Jun 04 PHP
PHP入门学习笔记之一
Oct 12 PHP
php中存储用户ID和密码到mysql数据库的方法
Feb 06 PHP
php实现统计邮件大小的方法
Aug 06 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
Dec 15 PHP
php随机生成数字字母组合的方法
Mar 18 PHP
thinkPHP自动验证机制详解
Dec 05 PHP
PHP多种序列化/反序列化的方法详解
Jun 23 PHP
Laravel学习基础之migrate的使用教程
Oct 11 PHP
php实现微信模板消息推送
Mar 30 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
Feb 28 #PHP
PHP微信发送推送消息乱码的解决方法
Feb 28 #PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
Feb 28 #PHP
PHP删除数组中特定元素的两种方法
Feb 28 #PHP
PHP实时统计中文字数和区别
Feb 28 #PHP
PHP正则判断一个变量是否为正整数的方法
Feb 27 #PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
Feb 27 #PHP
You might like
PHP 实现浏览记录并按日期分组
2017/05/11 PHP
PHP多维数组指定多字段排序的示例代码
2018/05/16 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
PHP函数用法详解【初始化、嵌套、内置函数等】
2020/06/02 PHP
网页自动刷新,不产生嗒嗒声的一个解决方法
2007/03/27 Javascript
JQuery实现的在新窗口打开链接的方法小结
2010/04/22 Javascript
JS 如果改变span标签的是否隐藏属性
2011/10/06 Javascript
分享几个超级震憾的图片特效
2012/01/08 Javascript
通过jQuery源码学习javascript(三)
2012/12/27 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
2014/02/11 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
2014/02/22 Javascript
JQuery中的事件及动画用法实例
2015/01/26 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
js实现点击向下展开的下拉菜单效果代码
2015/09/01 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
Angular实现form自动布局
2016/01/28 Javascript
微信JSAPI Ticket接口签名详解
2020/06/28 Javascript
Angular8路由守卫原理和使用方法
2019/08/29 Javascript
[33:23]VG vs Pain 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
[41:11]完美世界DOTA2联赛PWL S2 Inki vs Magma 第一场 11.22
2020/11/24 DOTA
Python程序语言快速上手教程
2012/07/18 Python
在Python中使用itertools模块中的组合函数的教程
2015/04/13 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
python利用多种方式来统计词频(单词个数)
2019/05/27 Python
python实现批量处理将图片粘贴到另一张图片上并保存
2019/12/12 Python
通过python实现windows桌面截图代码实例
2020/01/17 Python
python+opencv实现移动侦测(帧差法)
2020/03/20 Python
Python的collections模块真的很好用
2021/03/01 Python
Html5之webcoekt播放JPEG图片流
2020/09/22 HTML / CSS
老海军美国官网:Old Navy
2016/09/05 全球购物
生产副总岗位职责
2013/11/28 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
揭牌仪式主持词
2014/03/19 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
Python下载商品数据并连接数据库且保存数据
2022/03/31 Python
Python matplotlib绘制雷达图
2022/04/13 Python