2011-09-30 3 views
0

디렉토리 폴더의 모든 폴더를 검색하고 그 안에있는 모든 하위 폴더를 변경하려고합니다. 예를 들어, 루트 폴더 루트에 을 넣고, 모든 하위 폴더 A, B, C, D, ..를 1,2,34 ...로 변경하고 싶습니다. 어떻게하면 PHP로 할 수 있습니까? 감사. 이 같은디렉토리의 모든 폴더를 검색하고 그 안에있는 모든 폴더의 이름을 변경하십시오.

+2

지금까지 해보신 것은 무엇입니까? 바른 길을 가기 위해서는'scandir','is_dir'과'rename' 함수를 살펴 봐야합니다. –

답변

0

뭔가 :

$count = 0; 
foreach(new DirectoryIterator('Root') as $fileInfo) { 
    if ($fileInfo->isDir() && !$fileInfo->isDot()) { 
     $count++; 
     rename($fileInfo->getPathName(), $fileInfo->getPath() . "/$count"); 
    } 
} 


링크 :

0
<?php 

$basedir = "/tmp"; //or whatever your "to change" home directory is 

$contents = scandir($basedir); 
$count = 1; 

foreach ($contents as $check) { 
    if (is_dir($basedir . "/" . $check) && $check != "." && $check != "..") { 
     rename($basedir . "/" . $check, $basedir . "/" . $count); 
     $count++; 
    } 
} 

?> 

물론 스크립트를 실행하는 위치에 따라 적절한 CHMOD가 있어야합니다.

관련 문제