我想重命名多个图像在不同名称的文件夹中,每10个图像使用php
问题描述:
我有一个文件包含例如1000个图像,我有100个名称,我需要重命名每100个名称中的一个名称使用PHP,我做了下面的代码,但似乎不起作用::我想重命名多个图像在不同名称的文件夹中,每10个图像使用php
下面是代码::
<?php
$names = array("mo1","mo2", "mo3","mo4",...);
$directory = '/Users/apple/Desktop/toyor/';
$scanned_directory = array_diff(scandir($directory), array('..', '.'));
$flag = 0;
foreach ($names as $value) {
for ($i=$flag; $i < count($names); $i++) {
foreach ($scanned_directory as $file_name) {
if($flag == 9)
continue;
else{
rename($file_name, $value.generate_random_string());
$flag++;
}
}
}
}
function generate_random_string($length = 10) {
$characters = 'abcdefghijklmnopqrstuvwxyz';
$charactersLength = strlen($characters);
$randomString = '';
for ($i = 0; $i < $length; $i++) {
$randomString .= $characters[rand(0, $charactersLength - 1)];
}
return $randomString . rand(10, 99);
}
?>
答
你只会重命名第10个文件的代码。我会做这样的事情。
$name = array('mo1', 'mo2',...
$scanned_directory = array_diff(scandir($directory), array('..', '.'));
$flag = 0;
$current_name = 0;
foreach ($scanned_directory as $file_name) {
if ($flag == 9) {
$flag = 0;
$current_name++;
}
rename($file_name, $name[$current_name].generate_random_string());
$flag++;
}
我无法理解部件'i我 apokryfos