2016-04-28 6 views
1

アップロードフォルダにはさまざまな種類の画像があります。私はウェブページ上に.gif画像だけを表示したいだけです。なぜ画像が表示されないのですか(出力スクリーンショットを参照)?PHP globはGIFをフィルタリングしません

  $dir = "uploads"; 
     $allowedExts = array('jpg', 'jpeg', 'png', 'gif'); 

     if(file_exists($dir) == false){ 
      echo 'Directory \''. $dir . '\' not found!'; 
     } 
     else{ 
      //$dir_contents = scandir($dir); 
      $dir_contents = glob($dir. "/*.gif"); 

      foreach($dir_contents as $file){ 
       $exp_array = explode('.', strtolower($file)); 
       $extension = end($exp_array); 

       if(in_array($extension, $allowedExts)){ 
        echo '<img src="'. $dir. '/'. $file. '" alt="'. $file. '" width="250" height="190" />'; 
       } 
      } 
     } 

screenshot

答えて

1

あなたは自分のコードに次のコードを置き換える:

if(in_array($extension, $allowedExts)){ 
    echo '<img src="'.$file. '" alt="'. $file. '" width="250" height="190" />'; 
} 
+0

卿、それは動作します!!!ありがとう。私はそれについて簡単に説明してください。それでもあなたの解決策を理解しようとしています。 – Tina

+0

私はprint_r($ dir_contents)を使用しました。 Array([0] =>アップロード/(7).gif)。それから私は理解した。 :) – Tina

+0

はいティナ、イメージソースのディレクトリ名を繰り返していました。 –

関連する問題