아래에서이 파일의 이름을 바꾸는 방법은 무엇입니까?
/Categories
| /Celebrities
| | /Alyssa Milano
| | | 1.jpg
| | | 2.jpg
| | | 3.jpg
| | | 4.jpg
| | | 5.jpg
| | /Britney Spears
| | | 1.jpg
| | | 2.jpg
| | | 3.jpg
| | | 4.jpg
| | | 5.jpg
| /Singers
| | /Rihanna
| | | 1.jpg
| | | 2.jpg
| | | 3.jpg
| | | 4.jpg
| | | 5.jpg
| | /Katy Perry
| | | 1.jpg
| | | 2.jpg
| | | 3.jpg
| | | 4.jpg
| | | 5.jpg
나는 이름 변경하려는 1.JPG , 2.JPG , 3.JPG , 4.jpg , 5.jpg 에
Alyssa Milano-1.jpg, Alyssa Milano-2.jpg, Alyssa 밀라노-3.jpg
브리트니 스피어스-1.jpg, 브리트니 스피어스-2.jpg, 브리트니 스피어스-3.jpg
리한나-1.jpg, 리한나-2.jpg, 리한나-3.jpg
케이티 페리-1.jpg, 케이티 페리-2.jpg, 케이티 페리-3.jpg
안녕하세요 @GusDB,
아래 코드를 변경했지만 아무 일도 일어나지 않습니다.
<?php
/**
* Created by Gus de Boer
* 28-10-2014
* Stackoverflow
*/
function scanParentDir(){
$categories = scandir('categories ');
foreach($categories as $cat){
if(file_exists('categories /'.$cat) && $cat != '.' && $cat != '..'){
changesNamesToSubParentDir($cat);
}
}
}
function changesNamesToSubParentDir($cat){
$albums = scandir('categories /'.$cat);
foreach($albums as $album){
if(file_exists('categories /'.$cat.'/'.$album) && $album != '.' && $album != '..'){
changesNamesToParentDir($album);
}
}
}
function changesNamesToParentDir($album){
$files = scandir('categories /'.$cat.'/'.$album);
foreach($files as $file){
if(file_exists('categories /'.$cat.'/'.$album.'/'.$file) && $file != '.' && $file != '..'){
$filename = pathinfo('categories /'.$cat.'/'.$album.'/'.$file);
rename('categories /'.$cat.'/'.$album.'/'.$file, 'categories /'.$cat.'/'.$album.'/'.$album.$filename['basename']);
}
}
}
?>
대단히 감사합니다.
scandir () ( http://php.net/manual/en/function.scandir.php )을 사용하여 "Celebrities"디렉토리의 모든 디렉토리 배열을 가져올 수 있습니다.
scandir('path-to-directory');
그러면 모든 디렉토리가 포함 된 배열이 생성됩니다. 그런 다음 반복 할 수 있으며 모든 이미지에 대해 scandir ()을 다시 수행합니다.
rename () ( http://nl3.php.net/manual/en/function.rename.php )으로 파일 이름을 바꿀 수 있습니다.
rename('path-to-file<oldname>', 'path-to-file<newname>');
먼저 코딩을 시도하고 나중에 질문해야합니다. 또한 이미 시도한 코드 샘플을 제공하십시오.
나는 이것이 당신을 위해 잘되기를 바랍니다!
편집하다:
이 기능은 당신을 위해 트릭을 할 것입니다. 이것은 기본적인 이름 변경 일 뿐이며 더 많은 검사와 항목을 추가해야합니다.
<?php
/**
* Created by Gus de Boer
* 28-10-2014
* Stackoverflow
*/
function scanParentDir(){
$directories = scandir('Categories/Celebrities');
foreach($directories as $dir){
if(file_exists('Categories/Celebrities/'.$dir) && $dir != '.' && $dir != '..'){
changesNamesToParentDir($dir);
}
}
}
function changesNamesToParentDir($dir){
$files = scandir('Categories/Celebrities/'.$dir);
foreach($files as $file){
if(file_exists('Categories/Celebrities/'.$dir.'/'.$file) && $file != '.' && $file != '..'){
$filename = pathinfo('Categories/Celebrities/'.$dir.'/'.$file);
rename('Categories/Celebrities/'.$dir.'/'.$file, 'Categories/Celebrities/'.$dir.'/'.$dir.$filename['basename']);
}
}
}
?>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다