2009-10-30 11 views
0

오케이, 그래서 내가하려는 것은 "이전"폴더를 스캔하는 것입니다. 내가 돈 경우PHP scandir 이상한 행동

$scanned = scandir(".."); 
foreach($scanned as $file){ 

if(is_file($file)){ 
    print $file."<br />";  
    } 
} 

심지어 내 ".."디렉토리에 있지만 내가 20 + 내가받을 파일이 단지 내가 눈치 세 행

index.jpg 
index.php 
template.dtd 

는 것을, 절 경우 is_file t의 사용은 모든 파일을 반환 이름; 하지만 if 절이 정말 필요합니다.

답변

1

나는이 세 파일이 현재 디렉토리와 상위 디렉토리 모두에 있다고 추측합니다. scandir()은 파일 이름 만 반환하며, is_file("../$file")을 의미하면 is_file($file)이라고합니다.

+0

아니, 그게 뭔가 (나는 모든 것을 시도 : D 조) ... 내 코드 – kmunky

+0

그래서 내 코드는 이상한 전반적인 :)) (내 나라에서 오전 5시) 감사합니다 그 조각을 제거 감사합니다 – kmunky

1

함수는 현재 디렉토리의 파일 이름을 테스트하며 이전 디렉토리는 테스트하지 않습니다. 원하는 결과를 얻으려면 대신 is_file ('../'. $ file)을 사용하십시오.