PHP Класс csscomb, csscomb

Автор: : Vyacheslav Oliyanchuk (miripiruni)
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
$code
$default_sort_order
$mode
$sort_order
$yandex_sort_order

Открытые методы

Метод Описание
array_implode ( $arrays, &$target = [] ) Склеивает многомерный массив в строку
csscomb ( $css = '', $debug = false, $custom_sort_order = null ) : string | false
end_of_process ( )
get_sort_order ( $order_name = null )
log ( $before, $after )
parse_child ( $value = '' ) Разбиваем код на группы: - вложенные {} - переменные ($tomato, @tomato) - включения (@import, @include, @extend) - простые свойства (color: white;) TODO: добавить поддержку сложных свойств (border: {.
parse_properties ( $css = '' ) Сильно зависит от $this->mode
parse_root ( $css = '' ) Ищем парные {} первого уровня
parse_rules ( ) Зависит от $this->mode Из $this->code['edited'] получает массив разбитый по }
postprocess ( ) Постпроцесс, убираем все подстановки и возвращаем на место всё, что мешало сортировке
preprocess ( )
resort_properties ( $prop ) Функция выполняет сортировку свойств
set_mode ( ) Функция устанавливает $this->mode
set_sort_order ( $json_array = null ) Функция устанавливает $this->sort_order

Приватные методы

Метод Описание
get_through_number ( $value ) : {bool | int} Возвращает сквозной прядковый номер элемента двумерного массива так, как если бы этот массив был одномерным
separate_property_group ( $properties ) : {array} Разделяет свойства на группы пустой строкой Внимание: вызывать только когда есть разделение на группы, иначе вернет входной массив без изменений

Описание методов

array_implode() публичный метод

Склеивает многомерный массив в строку
public array_implode ( $arrays, &$target = [] )

csscomb() публичный метод

public csscomb ( $css = '', $debug = false, $custom_sort_order = null ) : string | false
Результат string | false

end_of_process() публичный метод

public end_of_process ( )

get_sort_order() публичный метод

public get_sort_order ( $order_name = null )

log() публичный метод

public log ( $before, $after )

parse_child() публичный метод

..})
public parse_child ( $value = '' )

parse_properties() публичный метод

Парсит CSS-декларации из строки
public parse_properties ( $css = '' )

parse_root() публичный метод

Ищем парные {} первого уровня
public parse_root ( $css = '' )

parse_rules() публичный метод

Зависит от $this->mode Из $this->code['edited'] получает массив разбитый по }
public parse_rules ( )

postprocess() публичный метод

Постпроцесс, убираем все подстановки и возвращаем на место всё, что мешало сортировке
public postprocess ( )

preprocess() публичный метод

public preprocess ( )

resort_properties() публичный метод

Функция выполняет сортировку свойств
public resort_properties ( $prop )

set_mode() публичный метод

Функция устанавливает $this->mode
public set_mode ( )

set_sort_order() публичный метод

Функция устанавливает $this->sort_order
public set_sort_order ( $json_array = null )

Описание свойств

$code публичное свойство

public $code

$default_sort_order публичное свойство

public $default_sort_order

$mode публичное свойство

public $mode

$sort_order публичное свойство

public $sort_order

$yandex_sort_order публичное свойство

public $yandex_sort_order