PHP 하위 디렉토리를 새 파일 이름으로 사용하여 모든 파일 이름 바꾸기

안와르

아래에서이 파일의 이름을 바꾸는 방법은 무엇입니까?

/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']);
        }
    }
}
?>

대단히 감사합니다.

Gus de Boer

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] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

하위 디렉토리의 모든 파일 이름 바꾸기

분류에서Dev

다른 하위 디렉토리 내의 모든 파일 이름 바꾸기

분류에서Dev

Python을 사용하여 디렉터리의 모든 파일 이름 바꾸기

분류에서Dev

하위 디렉터리의 모든 파일을 단일 파일로 바꾸는 Windows 일괄 처리 방식 (모든 파일 복사, 이름 바꾸기)

분류에서Dev

이름 바꾸기를 사용하여 파일 및 디렉토리 이름 바꾸기

분류에서Dev

하위 디렉토리를 반복하고 지정된 확장자의 모든 파일 이름을 동일한 파일 이름으로 바꿉니다.

분류에서Dev

find를 사용하여 발견 된 모든 파일을 동일한 디렉토리의 새 이름으로 복사하려면 어떻게해야합니까?

분류에서Dev

vim을 사용하여 디렉토리의 모든 파일 이름 얻기

분류에서Dev

접두사를 추가하여 디렉토리의 모든 파일 이름을 바꾸는 방법

분류에서Dev

접두사를 추가하여 디렉토리의 모든 파일 이름을 바꾸는 방법

분류에서Dev

디렉토리의 모든 파일을 동일한 디렉토리의 새 하위 디렉토리로 이동

분류에서Dev

Ruby를 사용하여 모든 하위 디렉토리 이름 바꾸기

분류에서Dev

여러 디렉토리의 모든 png 파일 이름 바꾸기

분류에서Dev

sed 명령을 사용하여 텍스트 파일을 디렉토리 이름으로 바꾸기

분류에서Dev

NSLibraryDirectory의 모든 파일 및 디렉토리 이름 바꾸기

분류에서Dev

하위 디렉토리의 파일 이름과 일치하는 모든 파일에 증분 값 쓰기

분류에서Dev

모든 파일 이름을 반복하고 재귀 적으로 이름을 바꾸고 현재 하위 디렉토리 폴더를 현재 파일 이름에 추가하는 CMD

분류에서Dev

모든 하위 디렉토리에 대한 파일 이름과 파일 크기를 재귀 적으로 출력합니까?

분류에서Dev

하위 디렉토리 내의 pdf 파일 이름을 하위 디렉토리 이름으로 바꿉니다.

분류에서Dev

`mv`를 사용하여 중첩 된 디렉토리의 파일 이름 바꾸기

분류에서Dev

대체 및 변수를 사용하여 파일 및 디렉토리 이름 바꾸기

분류에서Dev

.xlsx를 기반으로하는 하위 디렉터리에있는 파일의 일괄 이름 바꾸기

분류에서Dev

XPath를 사용하여 VBScript로 XML 파일 이름 바꾸기

분류에서Dev

모든 디렉토리에서 이름으로 파일을 찾고 rsync를 사용하여 다른 디렉토리로 복사합니다.

분류에서Dev

PHP를 사용하여 디렉토리의 단일 파일 이름 가져 오기

분류에서Dev

이름 바꾸기를 사용하여 파일 이름 바꾸기

분류에서Dev

명령 프롬프트를 사용하여 디렉토리 트리에있는 모든 파일의 확장자 이름을 바꾸는 방법

분류에서Dev

폴더 이름과 동일한 이름으로 하위 디렉토리의 파일 이름을 바꿉니다.

분류에서Dev

문자열 대체를 사용하여 Linux에서 디렉토리의 모든 파일 이름을 바꾸는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    하위 디렉토리의 모든 파일 이름 바꾸기

  2. 2

    다른 하위 디렉토리 내의 모든 파일 이름 바꾸기

  3. 3

    Python을 사용하여 디렉터리의 모든 파일 이름 바꾸기

  4. 4

    하위 디렉터리의 모든 파일을 단일 파일로 바꾸는 Windows 일괄 처리 방식 (모든 파일 복사, 이름 바꾸기)

  5. 5

    이름 바꾸기를 사용하여 파일 및 디렉토리 이름 바꾸기

  6. 6

    하위 디렉토리를 반복하고 지정된 확장자의 모든 파일 이름을 동일한 파일 이름으로 바꿉니다.

  7. 7

    find를 사용하여 발견 된 모든 파일을 동일한 디렉토리의 새 이름으로 복사하려면 어떻게해야합니까?

  8. 8

    vim을 사용하여 디렉토리의 모든 파일 이름 얻기

  9. 9

    접두사를 추가하여 디렉토리의 모든 파일 이름을 바꾸는 방법

  10. 10

    접두사를 추가하여 디렉토리의 모든 파일 이름을 바꾸는 방법

  11. 11

    디렉토리의 모든 파일을 동일한 디렉토리의 새 하위 디렉토리로 이동

  12. 12

    Ruby를 사용하여 모든 하위 디렉토리 이름 바꾸기

  13. 13

    여러 디렉토리의 모든 png 파일 이름 바꾸기

  14. 14

    sed 명령을 사용하여 텍스트 파일을 디렉토리 이름으로 바꾸기

  15. 15

    NSLibraryDirectory의 모든 파일 및 디렉토리 이름 바꾸기

  16. 16

    하위 디렉토리의 파일 이름과 일치하는 모든 파일에 증분 값 쓰기

  17. 17

    모든 파일 이름을 반복하고 재귀 적으로 이름을 바꾸고 현재 하위 디렉토리 폴더를 현재 파일 이름에 추가하는 CMD

  18. 18

    모든 하위 디렉토리에 대한 파일 이름과 파일 크기를 재귀 적으로 출력합니까?

  19. 19

    하위 디렉토리 내의 pdf 파일 이름을 하위 디렉토리 이름으로 바꿉니다.

  20. 20

    `mv`를 사용하여 중첩 된 디렉토리의 파일 이름 바꾸기

  21. 21

    대체 및 변수를 사용하여 파일 및 디렉토리 이름 바꾸기

  22. 22

    .xlsx를 기반으로하는 하위 디렉터리에있는 파일의 일괄 이름 바꾸기

  23. 23

    XPath를 사용하여 VBScript로 XML 파일 이름 바꾸기

  24. 24

    모든 디렉토리에서 이름으로 파일을 찾고 rsync를 사용하여 다른 디렉토리로 복사합니다.

  25. 25

    PHP를 사용하여 디렉토리의 단일 파일 이름 가져 오기

  26. 26

    이름 바꾸기를 사용하여 파일 이름 바꾸기

  27. 27

    명령 프롬프트를 사용하여 디렉토리 트리에있는 모든 파일의 확장자 이름을 바꾸는 방법

  28. 28

    폴더 이름과 동일한 이름으로 하위 디렉토리의 파일 이름을 바꿉니다.

  29. 29

    문자열 대체를 사용하여 Linux에서 디렉토리의 모든 파일 이름을 바꾸는 방법은 무엇입니까?

뜨겁다태그

보관