2017-03-02 4 views
3

나는 다음과 같은 PHP 코드 (숫자)를 정수로 모든 노래의 이름을 바꿀 필요하지만, 오류 보여줍니다PHP7 이름 바꾸기 모든 파일 (창 10) 64 비트 XAMPP

Warning: rename(abc.mp3,2.4): The system cannot find the file specified. (code: 2) in D:\xampp\htdocs\hta\file_renames.php on line 14 

을 PATHINFO_EXTENSION 명령도 여기에서 작동하지 않습니까? 내가 XAMPP (php7)와 창 (10)

<?php $total = 0; 
$dir = "songs/"; 
foreach (new DirectoryIterator($dir) as $fileInfo) { 
if(!$fileInfo->isDot()){ 
    $total +=1; 
    $file = $fileInfo->getFilename(); 
    rename($file,$total.'.'.PATHINFO_EXTENSION); 
} 
} 
echo('Total files: '.$total); 
?> 

을 사용하고 방법 number.mp3 파일에 내 모든 .mp3 파일 이름을 바꾸려면? 루프 안에서?

답변

2

당신은 rename에 (상대 할 수있다)의 전체 경로를 제공해야합니다. PATHINFO_EXTENSION에 대해서, 당신은 그것을 오용하고 있습니다. 다음은 고정 코드입니다.

<?php 
$total = 0; 
$dir = "songs/"; 
foreach (new DirectoryIterator($dir) as $fileInfo) { 
    if(!$fileInfo->isDot()){ 
     $total +=1; 
     $file = $dir.$fileInfo->getFilename(); 
     $ext = pathinfo($file, PATHINFO_EXTENSION); 
     $newFile = $dir.$total.'.'.$ext; 
     rename($file, $newFile); 
    } 
} 
echo('Total files: '.$total); 
?> 
+0

감사합니다. 감사 –