2016-06-03 3 views
1

I이 JPG를 위해 지정된 디렉토리 검색 다음 코드 :PHP는 scan_it은 밑줄로 시작하는 디렉토리를 제외하는

<?php 
$scan_it = new RecursiveDirectoryIterator("images/" . $this->item->extraFields->PropertYID->value . ""); 

foreach(new RecursiveIteratorIterator($scan_it) as $file) { 
if (strtolower(substr($file, -4)) == ".jpg" && 
strtolower(substr($file, -4)) == ".jpg") { 

echo '<div><img src="'.$file .'" alt="" />'."</div>"; 
} 
} 
?> 

이드 단순히 밑줄로 시작하는 이름이있는 폴더를 검색이에서 제외를 (_). 디렉토리 구조는 다음과 같은 경우

는 명확히하기 : _room1 제외

/images/interior/ 

/images/exterior/ 

/images/_room1/ 

/images/room2/ 

/images/room3/ 

모든 디렉토리가 포함됩니다.

미리 감사드립니다.

+0

내가 제공 한 코드가 작동하는지 확인 했습니까? –

+0

@Amit Ray 죄송합니다. ive님께서만 확인하실 수 있습니다. 즉, 작동하지 않는 것을 두려워 할 수도 있습니다. 폴더 이름의 시작 부분에 관계없이 모든 이미지를 찾으십시오. Amit! – jimmywiddle

답변

0
당신은 그것의 중간에 다음이

할 수 있다면 첫 번째 '_'와 같은 문자 및 확인과 디렉토리를 제거하려면 당신은 폴더 이름

$directory = "images/' . $this->item->extraFields->PropertYID->value '"; 
     $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory), RecursiveIteratorIterator::CHILD_FIRST); 
    foreach($files as $name => $file){ 
     if(is_dir($file)){ //Edited 
      $pos = strpos($file, '_'); 
     } 
     if($pos === false){ 
      if (strtolower(substr($file, -4)) == ".jpg" && 
      strtolower(substr($file, -4)) == ".jpg") { 

      echo '<div><img src="'.$file .'" alt="" />'."</div>"; 
      } 
      } 
    } 

에 '_'를 검색 할 수 있습니다

$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory), RecursiveIteratorIterator::CHILD_FIRST); 
foreach($files as $name => $file){ 
    if(is_dir($file)){ 
     $pos = strpos($file, '_'); 
    } 
    if(($pos === false) || $pos>0){ 
     if (strtolower(substr($file, -4)) == ".jpg" && 
     strtolower(substr($file, -4)) == ".jpg") { 

     echo '<div><img src="'.$file .'" alt="" />'."</div>"; 
     } 
     } 
} 
+0

내 답변이 지연되어 죄송합니다. 하지만 인스턴트 메신저 두려워 작동하지, 많은 도움을 주셔서 감사합니다! – jimmywiddle

+0

다시 점검하고 localhost에서 제대로 작동하는지 확인합니다. –

+0

그게 전부 이상한데, 나는 또한 다시 검사했고 _로 모든 폴더의 이름을 바꿨지 만 스크립트는 여전히 모든 이미지를 찾습니다. (관련없는 참고하지만 나에게 제대로 설치가 다 증명 : 이미지를 호출하는이 페이지에서 다른 PHP 코드도 있지만 내가 찾지 못하는 폴더의 이름을 바꾸 었습니다.) 다시 도움을 주셔서 감사합니다 Amit! – jimmywiddle

관련 문제