【发布时间】:2014-07-11 13:22:24
【问题描述】:
我正在尝试让 PHP 按顺序重命名目录中的文件列表(1.jpg、2.jpg 等)。每次大约20个文件。通常会缺少一个数字(例如 13.jpg,因此所有内容都需要重新编号。)这就是我需要脚本的目的。以下是我所拥有的作品,除了每次删除图像 2-9.jpg 时。所以如果文件夹里有19个文件,我运行脚本,然后就有1.jpg和10-18.jpg。真的很奇怪?这是可以修复的吗?它可能与覆盖相同的文件名有关吗?奇怪的是,在 10.jpg 之后它工作正常......
$i=1;
foreach (array_filter(glob("../images/gallery/10/*") ,"is_file") as $f){
rename($f, "../images/gallery/10/".$i.".jpg");
$i++;
}
谢谢!
【问题讨论】:
-
那是因为在循环过程中会有一个偏移量已经被用作文件名,因此,替换文件。
标签: php rename sequential