Пример #1
0
	function _do_walk_dir($dir, $separator, $function_def, &$return_params, $params)
	{
		if(is_dir($dir))
		{
			$handle = opendir($dir);
			
			while(($file = readdir($handle)) !== false) 
			{
				if (($file != '.') && ($file != '..')) 
				{
					call_user_func_array($function_def, array('dir' => $dir, 'file' => $file, 'params' => $params, 'return_params' => &$return_params));
					
					if (is_dir($dir . $separator . $file))
						fs :: _do_walk_dir($dir . $separator . $file, $separator, $function_def, $return_params, $params);
				}
			}
			closedir($handle); 
		}
	}
Пример #2
0
  function _do_walk_dir($item, $separator, $function_def, &$return_params, $params, $include_first, $level=0)
  {
    if($level > 0 || ($level == 0 && $include_first))
      call_user_func_array($function_def, array('dir' => dirname($item),
                                                'file' => basename($item),
                                                'path' => $item,
                                                'params' => $params,
                                                'return_params' => &$return_params));
    if(!is_dir($item))
      return;

    $handle = opendir($item);

    while(($file = readdir($handle)) !== false)
    {
      if (($file == '.') || ($file == '..'))
        continue;

      fs :: _do_walk_dir($item . $separator . $file,
                         $separator,
                         $function_def,
                         $return_params,
                         $params,
                         $level + 1);
    }
    closedir($handle);
  }