• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/web/dom/cssparser.php
  • Класс: BitrixMainWebDOMCssParser
  • Вызов: CssParser::sortSelectors
static function sortSelectors($styleList)
{
	foreach($styleList as $k => $v)
	{
		$styleList[$k]['SORT'] = static::getSelectorSort($v['SELECTOR']);
		$styleList[$k]['SORT'][] = $k;
	}

	usort($styleList, function ($first, $second)
	{
		$a = $first['SORT'];
		$b = $second['SORT'];

		for($i = 0; $i < 4; $i++)
		{
			if($a[$i] !== $b[$i])
			{
				return $a[$i] < $b[$i] ? -1 : 1;
			}
		}

		return -1; // last class have more priority
	});

	foreach($styleList as $k => $v)
	{
		unset($styleList[$k]['SORT']);
	}

	return array_reverse($styleList);
}