2011-08-19 6 views
0
<?php 
if ($handle = opendir('gallery3/var/thumbs/Captain-America/')) { 
    while (false !== ($file = readdir($handle))) { 
     if ($file != "." && $file != "..") { 
      echo "$file\n";?><br/><? 
      echo rtrim($file, '.jpg');?><br/><? 
      $names[]=$file; 
     } 
    } 
    closedir($handle); 
}  
?> 

출력하고있는 파일 이름의 배열과 rtrim 요소를 만들고 싶습니다.배열 IF 문을 채우십시오.

+1

그리고 뭐가 문제입니까? Btw, 나는 모두 (나도) PHP로 HTML을 출력하지 않는다고 말한다. 그러나 당신은 그것을 엄격하게 따라야 할 필요가 없다. 가독성도 중요합니다! –

+0

$ 파일 이름 배열과 $ file – Techmax

+0

의 rtrim 생성 방법을 이미 알고있는 것으로 보입니다. '$ file'을 배열에 추가하고있는 것을 볼 수 있습니다. 'rtrim ($ file, '.jpg')'의 반환 값으로 같은 것을하지 못하게하는 이유는 무엇입니까? 귀하의 질문에 대해 좀 더 구체적으로 말하십시오. 마지막에 얻고 자하는 어레이의 예제를 제공하십시오. –

답변

1

glob 은 (array_map과 함께) 더 나은 일을 할 수 있지만 배열을 만들고, 아주 간단하게에 일치하는 항목을 추가 할 수 있습니다

$files = array(); // declare 
... 
$files[] = rtrim($file,'.jpg'); // adding entry 
... 
print_r($files); // debug output to see it 

글로브 예 :

// with or without the array_map to basename() 
$files = array_map('basename',glob('gallery3/var/thumbs/Captain-America/*')); 
var_dump($files); // normal files 

$files_rtrim = array_map(create_function('$f','return rtrim($f,".jpg");'),$files); 
var_dump($files_rtrim); // rtrim version of same files 
+1

glob 내가 추측하는 전체 경로를 반환합니다. – Techmax

+0

['basename'] (http://php.net/manual/en/function.basename.php)을 사용하면 쉽게 피할 수 있습니다. –

관련 문제