php逐行读写文件(PHP实现读取文件夹及批量重命名文件操作示例)
类别:编程学习 浏览量:1189
时间:2022-03-29 15:11:41 php逐行读写文件
PHP实现读取文件夹及批量重命名文件操作示例本文实例讲述了php实现读取文件夹及批量重命名文件操作。分享给大家供大家参考,具体如下:
以读取从网上下载的评书解压后的文件夹为例,并批量重命名
文件夹内容如下,现在使用php读取这个文件夹里面的文件,并批量重命名为"隋唐演义+序号.mp3"的格式:
|
<?php $dir1 = './dir1/' ; //读取文件夹名称 (重命名为dir1避免中文报错,移动到与要执行的php文件同级目录) $filearr = scandir( $dir1 ); //读取文件夹 print_r( $filearr ); |
进一步操作,对获得的文件数组做一些处理:
|
<?php $dir1 = './dir1/' ; //读取文件夹名称(避免使用中文) $filearr = scandir( $dir1 ); //读取文件夹 unset( $filearr [0]); //去除多余的元素 unset( $filearr [1]); $filearr = array_values ( $filearr ); //使数组从0开始,以1递增 print_r( $filearr ); |
现在对文件数组循环,重命名文件,并移动到文件夹dir2(移动文件是rename()函数造成的):
|
<?php $dir1 = './dir1/' ; //读取文件夹名称(避免使用中文) $dir2 = './dir2/' ; //移动到文件夹名称(避免使用中文) $filearr = scandir( $dir1 ); //读取文件夹 unset( $filearr [0]); //去除多余的元素 unset( $filearr [1]); $filearr = array_values ( $filearr ); //使数组从0开始,以1递增 $filecount = count ( $filearr ); //文件数量 $onenum = 1; //起始编号 $maxnum = $onenum + $filecount ; //最大循环次数 $title = 'styy' ; //文件标题 $houzhui = '.mp3' ; //文件后缀 for ( $i = $onenum ; $i <= $maxnum ; $i ++) { for ( $j =0; $j < $filecount ; $j ++) { if ( $i <10){ $i = '0' . $i ; } rename( $dir1 . $filearr [ $j ], $dir2 . $title . $i . $houzhui ); $i ++; } } |
操作结果如下,批量重命名成功,dir2文件夹内容:
如果使用中文名对文件重命名,会出现乱码的现象,原因是字符集编码设置的问题,解决方法如下:(但遇到某些中文字符仍旧是乱码)
|
<?php $dir1 = './dir1/' ; //读取文件夹名称 $dir2 = './dir2/' ; //移动到文件夹名称 $filearr = scandir( $dir1 ); //读取文件夹 unset( $filearr [0]); //去除多余的元素 unset( $filearr [1]); $filearr = array_values ( $filearr ); //使数组从0开始,以1递增 $filecount = count ( $filearr ); //文件数量 $onenum = 1; //起始编号 $maxnum = $onenum + $filecount ; //最大循环次数 $title = '隋唐演义' ; //文件标题 $houzhui = '.mp3' ; //文件后缀 for ( $i = $onenum ; $i <= $maxnum ; $i ++) { for ( $j =0; $j < $filecount ; $j ++) { if ( $i <10){ $i = '0' . $i ; } $filename = $title . $i . $houzhui ; rename( $dir1 . $filearr [ $j ], $dir2 .iconv( "utf-8" , "gb2312" , $filename )); //设置字符集 $i ++; } } |
运行后dir2文件夹内容如下:
到此完成php对文件夹中文件的读取、批量重命名操作。另外可以构思一个简单的页面自定义操作(如下图,代码省略)
希望本文所述对大家php程序设计有所帮助。
原文链接:https://blog.csdn.net/msllws/article/details/80956843
您可能感兴趣
- php秒杀实现代码(php无限极分类实现方法分析)
- php制作随机编号(PHP生成随机码的思路与方法实例探索)
- thinkphp5.1手动连接mysql数据库(thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例)
- linux如何安装php7.1.5环境(vmware linux系统安装最新的php7图解)
- lnmp安装php(LNMP系列教程之二 删除站点及域名绑定)
- php防session劫持(使用SMB共享来绕过php远程文件包含的限制执行RFI的利用)
- php 策略模式工厂模式区别(PHP设计模式之策略模式原理与用法实例分析)
- thinkphp5如何实现消息队列(thinkPHP5.1框架使用SemanticUI实现分页功能示例)
- phpcurl缺点(PHP封装cURL工具类与应用示例)
- php运用redis实现抢购实例(PHP+redis实现微博的拉模型案例详解)
- php常用加密技术(php用户名的密码加密更安全的方法)
- thinkphp标签详解(thinkphp整合系列之极验滑动验证码geetest功能)
- php怎么设置curl(php curl发送请求实例方法)
- php服务器有哪些(php服务器的系统详解)
- 宝塔面板phpMyAdmin错误教程(宝塔面板phpMyAdmin报错502 Bad Gateway nginx解决方法)
- php实例说明(PHP中Static静态关键字功能与用法实例分析)
- 于正又推女性古装大剧 杨蓉乔欣演女配,两位女主成 重头戏(于正又推女性古装大剧)
- 乔欣古装女主戏获热度 作为女主,却没吃到红利(乔欣古装女主戏获热度)
- 爱情是什么(爱情是什么最经典的话)
- 乔欣 古装剧中的高颜值(古装剧中的高颜值)
- 怎么才可以财富自由(如何让自己实现财富自由)
- 为什么越来越多年轻人回农村(为什么越来越多年轻人回农村生活)
热门推荐
- sql 基本函数(SQL开窗函数的具体实现详解)
- docker和jenkins部署的区别(docker搭建jenkins服务的示例)
- 新建的dedecms被黑(解决Dedecms生成RSS地图地址出错全都多了一个网址的问题)
- dedecms怎么调用标签(DEDECMS 留言薄模块的使用方法)
- mysqltruncate(MYSQL中Truncate的用法详解)
- css3渐变色动画代码(CSS3 实现的动态星空背景)
- nginx 反向代理的参数(Nginx反向代理及负载均衡如何实现基于linux)
- mysql的四种关系运算(详解MySQL拼接函数CONCAT的使用心得)
- python转pdf教程(Python实现将HTML转成PDF的方法分析)
- linux查看负载命令(在Linux命令行中使用计算器的5个命令详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9