[英]How can i move all image files from a directory to a sub-directory using php
[英]How can I rename all files in sub-directories with prefix of sub-directory name and then move files to new directory?
我基本上有这样的设置:
C:\Upload\A
C:\Upload\B
C:\Upload\C
C:\Upload\D
C:\Upload\E
其中A,B,C,D,E始终是不同的(产品ID),并且始终是不同的数量(它不一定是5个子目录)。 这些子目录中的每一个包含24个图像,编号为01-24。
我需要创建一个通过Web(IIS)远程运行的PHP文件,该文件查看Upload目录,获取每个子目录的名称,并将该名称附加到该子目录中包含的每个图像文件的开头。
因此, C:\\Upload\\A\\01.jpg
以及每个子目录中的其他23张图像都将变成C:\\Upload\\A\\A-O1.jpg
。
PHP文件需要对Upload目录中的每个子目录执行相同的操作。
然后,重命名完成后,PHP需要将所有目录(及其图像)从Upload目录复制到另一个目录。 复制后,需要清除上载目录。
这应该工作:
<?php
define('START_DIR', '/opt/lampp/htdocs/start');
define('DEST_DIR', '/opt/lampp/htdocs/dest');
define('SEPARATOR', '\\');
function firstStage() {
$d = dir(START_DIR);
while (false !== ($entry = $d->read())) {
if($entry != '.' && $entry != '..')
secondStage($entry);
}
$d->close();
}
function secondStage($prefix) {
$d = dir(START_DIR . SEPARATOR . $prefix);
while (false !== ($entry = $d->read())) {
if($entry != '.' && $entry != '..')
rename(START_DIR . SEPARATOR . $prefix . SEPARATOR . $entry, DEST_DIR . SEPARATOR . $prefix . '-' . $entry);
}
$d->close();
}
firstStage();
?>
只需调用firstStage()
即可开始该过程。 确保您具有对START_DIR
和DEST_DIR
读/写访问权限
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.