LETGAM » 2011.06.28 16:55

Копирую один и тот же файл функцией copy(),проблема в том что каждый раз он перезаписывается а мне нужно чтобы копирывался каждый раз новый пример: text.txt следующий text2.txt следующий text3.txt и т.д. Если можно код дайте.

TLENS » 2011.06.28 17:42

Сейчас дам код

LETGAM » 2011.06.28 17:58

TLENS написал:

Сейчас дам код

Давай, можно что б он был как можно проще и понятнее.

TLENS » 2011.06.28 18:45

Держи вроде все работает правильно

Код:

1
span style="color: #0000BB"><?phpfunction my_copy($var1, $var2) { if (is_file($var2)) { $shablon = preg_replace("/^(.+)(\.[^\.]+)$/", '$1(*)$2', $var2); $g = glob($shablon); $c = ((is_array($g))? count($g): 0); $var2 = str_replace('(*)', '(' . (($c)? ($c+1): 1) . ')', $shablon); } copy($var1,$var2); }my_copy('test.txt', './dir/test.txt');my_copy('test.txt', './dir/test.txt');my_copy('test.txt', './dir/test.txt');my_copy('test.txt', './dir/test.txt');my_copy('test.txt', 'test.txt');my_copy('test.txt', 'test.txt');my_copy('test.txt', 'test.txt');my_copy('test.txt', 'test.txt');my_copy('test.txt', 'test.txt');my_copy('test.txt', 'test.txt');
LETGAM » 2011.06.28 19:08

Спасибо помог.

TLENS » 2011.06.28 19:32

Немного подправил функцию а то она будет не правильно работаеть если ты удалишь какой то файл.

Код:

1
span style="color: #0000BB"><?phpfunction my_copy($var1, $var2) { if (is_file($var2)) { $shablon = preg_replace("/^(.+)(\.[^\.]+)$/", '$1(*)$2', $var2); $g = glob($shablon); if (is_array($g)) { $c = count($g); preg_match("/^.+\((\d+)\)\.[^\.]+$/", $g[$c-1], $c); $c = $c[1]; } else { $c = 0; } $var2 = str_replace('(*)', '(' . ($c + 1) . ')', $shablon); } copy($var1,$var2); }my_copy('test.txt', './dir/my.test.55.test.txt');