• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/baseobject.php
  • Класс: BitrixDiskBaseObject
  • Вызов: BaseObject::generateUniqueName
static function generateUniqueName(string $potentialName, int $underObjectId): string
{
	$count = 0;
	$newName = $potentialName;

	[$mainPartName, $suffix] = self::extractSuffixAndMainPart($potentialName);
	while (!static::isUniqueName($newName, $underObjectId))
	{
		$count++;
		[$newName] = static::getNextGeneratedName($mainPartName, $suffix, $underObjectId, $count > 2);

		if ($count > 10)
		{
			return static::generateFallbackName($mainPartName, $suffix);
		}
	}

	return $newName;
}