Привет.
Для красивой рекурсивной итерации каталога с под каталогами тебе следует использовать:
$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator(__DIR __ . '/images/product'), RecursiveIteratorIterator::SELF_FIRST);
Он будет возвращать
php.net/manual/ru/class.splfileinfo.php/** @var $obj splFileInfo */
foreach($objects as $name => $obj){
if (!$obj->isDir()) {
}
}
Что бы переставить местами, я бы использовал подход с explode
/** @var $name array */
$name = explode(' ', $splFileInfo->getName())
$out = $name[1] . '_' . $name[0];