Вот мой пример. Не хватает наверно ссылки на переменную или чего?
function file_rename($file)
{
echo '<p>Original file name: '.$file.'</p>'; // 1.jpg
$ext = end(explode(".", $file)); // расширение
$name = str_replace('.'.$ext, '', $file); // имя файла без расширения
return ($name + 1).'.'.$ext; // 2.jpg
}
//применение
$file = '1.jpg';
while(file_exists($file))
{
$file = file_rename($file);;
}
_____________
..Работает - не трогай!