重命名图像并将重命名的图像移动到新创建的目录中
rename images and move the renamed images in newly created directory
我想在这里创建一个名为 c:/xampp/htdocs/haha/tour/ 的新目录,并在该目录中移动我重命名的图像。在这里,我设法创建了新目录,但无法移动和重命名我的 images.How 我可以解决这个问题吗??
$dir='c:/xampp/htdocs/practice/haha';
$i=1;
if(is_dir($dir)){
echo dirname($dir).'</br>';
$file=opendir($dir);
while(($data=readdir($file))!==false){
if($data!='.' && $data!='..'){
$info=pathinfo($data,PATHINFO_EXTENSION);
if(!file_exists($dir.'/tour')){
mkdir($dir.'/tour/');
}
rename($dir.$data,$dir.'/tour/'.'image '.$i.'.jpg');
$i++;
}
}
}
您缺少一些 /
:
rename($dir.$data,$dir.'/tour/'.'image '.$i.'.jpg');
^---
$data
不包含任何 /
,所以您正在构建的是
rename('c:/xampp/htdocs/practice/haha' . 'foo', etc...)
变成
rename('c:/xampp/htdocs/practice/hahafoo', etc...)
^^^^^^^---doesn't exist
尝试
rename($dir .'/' . $data,$dir.'/tour/'.'image '.$i.'.jpg');
^^^^^^^^
相反。
这应该适合你:
这里我只是从你的目录中获取所有图像 glob()
. I create the directory if it doesn't exist already with mkdir()
然后移动所有图像
rename()
.
<?php
$dir = "c:/xampp/htdocs/practice/haha";
$files = glob($dir . "/*.{jpg,png,gif,jepg}", GLOB_BRACE);
//Create directory
if (!file_exists($dir . "/tour")) {
mkdir($dir . "/tour");
}
//Move all images
foreach($files as $key => $file) {
rename($dir . "/" .$data, $dir . "/tour/image" . ($key+1) . ".jpg");
}
?>
我想在这里创建一个名为 c:/xampp/htdocs/haha/tour/ 的新目录,并在该目录中移动我重命名的图像。在这里,我设法创建了新目录,但无法移动和重命名我的 images.How 我可以解决这个问题吗??
$dir='c:/xampp/htdocs/practice/haha';
$i=1;
if(is_dir($dir)){
echo dirname($dir).'</br>';
$file=opendir($dir);
while(($data=readdir($file))!==false){
if($data!='.' && $data!='..'){
$info=pathinfo($data,PATHINFO_EXTENSION);
if(!file_exists($dir.'/tour')){
mkdir($dir.'/tour/');
}
rename($dir.$data,$dir.'/tour/'.'image '.$i.'.jpg');
$i++;
}
}
}
您缺少一些 /
:
rename($dir.$data,$dir.'/tour/'.'image '.$i.'.jpg');
^---
$data
不包含任何 /
,所以您正在构建的是
rename('c:/xampp/htdocs/practice/haha' . 'foo', etc...)
变成
rename('c:/xampp/htdocs/practice/hahafoo', etc...)
^^^^^^^---doesn't exist
尝试
rename($dir .'/' . $data,$dir.'/tour/'.'image '.$i.'.jpg');
^^^^^^^^
相反。
这应该适合你:
这里我只是从你的目录中获取所有图像 glob()
. I create the directory if it doesn't exist already with mkdir()
然后移动所有图像
rename()
.
<?php
$dir = "c:/xampp/htdocs/practice/haha";
$files = glob($dir . "/*.{jpg,png,gif,jepg}", GLOB_BRACE);
//Create directory
if (!file_exists($dir . "/tour")) {
mkdir($dir . "/tour");
}
//Move all images
foreach($files as $key => $file) {
rename($dir . "/" .$data, $dir . "/tour/image" . ($key+1) . ".jpg");
}
?>