покажу на примере, есть папка А в ней файлы 1.php 2.php 3.php и папка Б в ней файлы 1.php 2.php ---------------- то есть в папке А есть файл 3.php ну, так вот, надо чтобы программа показала мне такой файл, которых нету в другой папке
чето бредовое написал... PHP: <?php function gf($path) { $folder=opendir($path); $i=0; while ($current_file=readdir($folder)) { if (($current_file != ".") && ($current_file != "..") && ($current_file != "Thumbs.db")) { $items[$i]=$current_file; $i=$i+1; } } closedir($folder); return($items); } $papko1 = gf('./tut/put/k/papke/nomer/1/'); $papko2 = gf('./tut/put/k/papke/nomer/2/'); foreach ($papko1 as $v) { if (!in_array($v,$papko2)) { $uniki[] = $v; } } foreach ($papko2 as $v) { if (!in_array($v,$papko1)) { $uniki[] = $v; } } $uniki = array_unique($uniki); print_r($uniki); ?>
то есть папка А файлы .php папки(в папке еще файлы и папки) папки(в папке еще файлы и еще папки) еще папочка в ней аналогично еще папки и файлы папка Б тоже самое что и в папке А но на файл больше,тоесть нужно узнать какой файл есть тут которого нету в папке А
по контенту или по имени? помница писал я софт который считает мд5 всех файлов в папке и выводит дубликаты (оч полезно для адулт галерейных фоток )
Перловка: Code: #!/usr/local/bin/perl my $dir_a = 'test_dir'; my $dir_b ='test_dir2'; analise_dirs($dir_a, $dir_b); sub analise_dirs { my ($dir_a, $dir_b) = @_; opendir DIR, $dir_a; my @list = readdir DIR; shift(@list); shift(@list); foreach $elements (@list) { print $dir_a.'/'.$elements."\n"; if (-f $dir_a.'/'.$elements) { if (!-e $dir_b.'/'.$elements) { logg ($dir_a.'/'.$elements, 'log.txt'); } } elsif (-d $dir_a.'/'.$elements) { analise_dirs($dir_a.'/'.$elements, $dir_b.'/'.$elements); } } } sub logg { my ($data, $file) = @_; open(OUT, '>> '.$file); print OUT $data."\n"; close(OUT); } system("pause"); Сохранит в файл все пути к файлам из папки "test_dir", которых нет в папке "test_dir2"