在子目录中搜索某些文件扩展名

时间:2013-10-11 15:31:48

标签: php

我在php中编写一个程序,通过媒体目录查找子目录,如果子目录中至少有一个具有指定文件扩展名的文件,则会为子目录打印一个隐藏/显示链接。如果单击隐藏/显示链接,将显示具有指定扩展名的文件的链接。我的代码大部分都有效,但只要找到包含指定文件扩展名并打印的子文件夹,就会打印出该子文件夹之后找到的所有文件夹,无论它们是否包含我要查找的文件。这会导致打印出一个隐藏/显示链接,当我点击它时不会做任何事情。我认为这可能与未能重置我的$content变量有关,但如果我使用unset()或将变量重置为零,它仍然无效。这是我的代码:

foreach($files as $folder){
  //Looks for subdirectory in the wifi folder 
  //and checks for video files before proceeding
  if(sizeof( $folder ) > 0) {
    foreach (glob("../www/media/" . $folder . "/*", GLOB_BRACE) as $fileExt) {
      $fileExtLC = pathinfo( strtolower($fileExt), PATHINFO_EXTENSION );

      if($fileExtLC === "mp4" || $fileExtLC === "mov" || $fileExtLC === "3gp") {
        $content = '1';
        break;
      }
    }
    if($content === '1'){
      //print show/hide link for subdirectory here

      //Search through subdirectories in media directory for 
      //video files and print links to screen
      $direcPath2 = '../www/media/' . $folder .'/';

      $dir_handle2 = @opendir($direcPath2) or die("Unable to open " . $direcPath2);  
      while($f2 = readdir($dir_handle2)){
        $filesExten2 = pathinfo( strtolower($f2), PATHINFO_EXTENSION );
        if($filesExten2 == "mov" || $filesExten2 == "mp4" || $filesExten2 == "3gp") {
          //print link to files here
        }
      }
      closedir($dir_handle2);  
    }    
  }                                                 
}                                  

0 个答案:

没有答案