PHP 对文件夹里的文件批量重命名,从1开始,后缀不变
时间:2023年10月04日
/来源:网络
/编辑:佚名
renameFiles函数:
function renameFiles($dir) {
// 获取目录下所有文件
$files = glob($dir . '/*');
if (empty($files)) {
return;
}
$i = 1;
foreach ($files as $file) {
// 获取文件的扩展名
$ext = pathinfo($file, PATHINFO_EXTENSION);
// 新文件名
$newName = $dir . '/' . $i . '.' . $ext;
// 重命名文件
if (file_exists($newName)) {
continue; // 如果新文件名已存在,则跳过
}
rename($file, $newName);
$i++;
}
}
该函数接受一个参数 $dir,表示要批量重命名的文件所在的目录路径。函数首先使用 glob() 函数来获取指定目录下所有文件的文件路径。然后,函数使用一个循环遍历所有文件,并为每个文件生成新的文件名。新文件名的格式为 $i.jpg,其中 $i 表示递增的数字序号。如果新文件名已经存在,则跳过该文件,不进行重命名操作。
你可以通过以下方式调用该函数:
$dir = '/path/to/files';
renameFiles($dir);
其中,/path/to/files 是要批量重命名文件的目录路径。调用函数后,函数会将该目录下的所有文件重命名,新文件名从 1 开始递增。
function renameFiles($dir) {
// 获取目录下所有文件
$files = glob($dir . '/*');
if (empty($files)) {
return;
}
$i = 1;
foreach ($files as $file) {
// 获取文件的扩展名
$ext = pathinfo($file, PATHINFO_EXTENSION);
// 新文件名
$newName = $dir . '/' . $i . '.' . $ext;
// 重命名文件
if (file_exists($newName)) {
continue; // 如果新文件名已存在,则跳过
}
rename($file, $newName);
$i++;
}
}
该函数接受一个参数 $dir,表示要批量重命名的文件所在的目录路径。函数首先使用 glob() 函数来获取指定目录下所有文件的文件路径。然后,函数使用一个循环遍历所有文件,并为每个文件生成新的文件名。新文件名的格式为 $i.jpg,其中 $i 表示递增的数字序号。如果新文件名已经存在,则跳过该文件,不进行重命名操作。
你可以通过以下方式调用该函数:
$dir = '/path/to/files';
renameFiles($dir);
其中,/path/to/files 是要批量重命名文件的目录路径。调用函数后,函数会将该目录下的所有文件重命名,新文件名从 1 开始递增。
新闻资讯 更多
- 【建站知识】查询nginx日志状态码大于400的请求并打印整行04-03
- 【建站知识】Python中的logger和handler到底是个什么?04-03
- 【建站知识】python3拉勾网爬虫之(您操作太频繁,请稍后访问)04-03
- 【建站知识】xpath 获取meta里的keywords及description的方法04-03
- 【建站知识】python向上取整以50为界04-03
- 【建站知识】scrapy xpath遇见乱码解决04-03
- 【建站知识】scrapy爬取后中文乱码,解决word转为html 时cp1252编码问题04-03
- 【建站知识】scrapy采集—爬取中文乱码,gb2312转为utf-804-03