Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
重命名文件夹中的许多文件-PHP_Php_Renaming - Fatal编程技术网

重命名文件夹中的许多文件-PHP

重命名文件夹中的许多文件-PHP,php,renaming,Php,Renaming,我在一个文件夹中有2500张图片,所有图片中都有NAME word。例如 Peter Wang B5357550.jpg Sander Mackiney B5355624.jpg 我需要做的是读取所有文件名并将其重命名为以下名称 B5357550.jpg B5355624.jpg 所以从文件名中删除名称和姓氏,在PHP中是否可以进行批量重命名? (所有学生ID的格式都是Bxxxxxxx)如果它们都是这种格式,那么修复起来就很简单,是的。运行glob将所有.jpg文件放到一个数组中,然后简单地

我在一个文件夹中有2500张图片,所有图片中都有NAME word。例如

Peter Wang B5357550.jpg
Sander Mackiney B5355624.jpg
我需要做的是读取所有文件名并将其重命名为以下名称

B5357550.jpg
B5355624.jpg
所以从文件名中删除名称和姓氏,在PHP中是否可以进行批量重命名?
(所有学生ID的格式都是Bxxxxxxx)

如果它们都是这种格式,那么修复起来就很简单,是的。运行
glob
将所有.jpg文件放到一个数组中,然后简单地
分解空格上的文件名,在该数组上使用
foreach
循环,使用
end
获取最后一节,然后
将文件重命名为该字符串。

快速、简单的解决方案:

$dir = $_SERVER['DOCUMENT_ROOT'].'/your-folder-to-files';
$files = scandir($dir);
unset($files[0],$files[1]);
foreach ($files as $oldname){
    $newname = substr($oldname, -12);
    rename ($dir.'/'.$oldname, $dir.'/'.$newname);
}

N.B.:您可能需要将服务器路径更改为类似于:

$dir = "/home/users/you/folder_files/";

  • 如果
    $\u服务器['DOCUMENT\u ROOT']
    不适合您

是的,可以在PHP中进行批量重命名。在Linux上你可以考虑<代码>重命名< /Cord>命令来批量重命名文件。你可以在@OctoTawatpong找到一些例子,很高兴能帮助你!如果这个解决方案有效->接受我的答案。
$dir = "folder_files/";