Пример #1
0
 function test_chop()
 {
 	$this->assertEqual(fs :: chop('test'), 'test');
 	$this->assertEqual(fs :: chop('test/'), 'test');
 }
Пример #2
0
 function find_subitems($dir, $types = 'dfl', $exclude_regex = '', $add_path = true, $include_hidden = false)
 {
 	$dir = fs :: clean_path($dir);
 	$dir = fs :: chop($dir);
 	    	
   $items = array();
   
   $separator = fs :: separator();
   
   if ($handle = opendir($dir))
   {
     while(($element = readdir($handle)) !== false)
     {
       if ($element == '.' || $element == '..')
       	continue;
       if (!$include_hidden && $element[0] == '.')
       	continue;
       if ($exclude_regex && preg_match($exclude_regex, $element))
       	continue;
       if (is_dir($dir . $separator . $element) && strpos($types, 'd') === false)
       	continue;
       if (is_link($dir . $separator . $element) && strpos($types, 'l') === false)
       	continue;
       if (is_file( $dir . $separator . $element ) && strpos($types, 'f') === false)
       	continue;
       	
       if ($add_path)
       {
         if (is_string($add_path))
         	$items[] = $add_path . $separator . $element;
         else
         	$items[] = $dir . $separator . $element;
       }
       else
       	$items[] = $element;
     }
     closedir($handle);
   }
   return $items;
 }
Пример #3
0
  function walk_dir($dir, $function_def, $params=array(), $include_first=false)
  {
    $return_params = array();

    $separator = fs :: separator();
    $dir = fs :: normalize_path($dir);
    $dir = fs :: chop($dir);

    $params['separator'] = $separator;

    fs :: _do_walk_dir($dir,
                       $separator,
                       $function_def,
                       $return_params,
                       $params,
                       $include_first);

    return $return_params;
  }