2014-08-07 13:36:04 +04:00
Документация
2014-08-01 12:12:19 +04:00
=============
2014-08-23 12:48:18 +04:00
< img style = "float:right" src = "http://aco.oml.ru/thumb/2Tdrgd9_ttbaBvqKcsSKIA/100r100/188321/gif-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-grammar-nazi-412594.jpg" alt = "grammar nazi required" >
**Внимание! Документация в режиме беты, тексты могут содержать опечатки**
2014-08-01 12:12:19 +04:00
### Fenom
* [Быстрый старт ](./start.md )
* [Адаптеры для фрейморков ](./adapters.md )
2014-08-07 13:36:04 +04:00
* [Разработка Fenom ](./dev/readme.md )
* [Настройки ](./configuration.md )
* [Синтаксис ](./syntax.md )
2014-08-08 15:58:50 +04:00
* [Переменные ](./syntax.md#Переменные )
* [Значения ](./syntax.md#Скалярные-значения )
* [Массивы ](./syntax.md#Массивы )
2014-08-07 13:36:04 +04:00
* [Операторы ](./operators.md )
2014-08-08 15:58:50 +04:00
* [Модификаторы ](./syntax.md#Модификаторы )
* [Теги ](./syntax.md#Теги )
* [Параметры тегов ](./syntax.md#Параметры-тегов )
2014-08-01 12:12:19 +04:00
***
### Теги
2014-10-31 00:24:56 +03:00
[Использование ](./syntax.md#Теги ) тегов.
2014-08-01 12:12:19 +04:00
2014-08-05 17:49:42 +04:00
* [set ](./tags/set.md ), `add` и `var` — определение значения переменной
2014-08-01 12:12:19 +04:00
* [if ](./tags/if.md ), `elseif` и `else` — условный оператор
2015-07-01 17:25:27 +03:00
* [foreach ](./tags/foreach.md ), `foreachelse` , `break` and `continue` — перебор элементов массива или объекта
2014-08-01 12:12:19 +04:00
* [for ](./tags/for.md ), `forelse` , `break` and `continue` — цикл
2015-03-08 09:17:14 +03:00
* [switch ](./tags/switch.md ), `case` — групповой условный оператор
2014-08-01 12:12:19 +04:00
* [cycle ](./tags/cycle.md ) — циклицеский перебор массива значений
2015-03-08 09:17:14 +03:00
* [include ](./tags/include.md ), `insert` — вставляет и исполняет указанный шаблон
2014-08-05 17:49:42 +04:00
* [extends ](./tags/extends.md ), `use` , `block` и `parent` — [наследование ](./inheritance.md ) шаблонов
2015-03-08 09:17:14 +03:00
* [filter ](./tags/filter.md ) — применение модификаторов к фрагменту шаблона
2014-08-01 12:12:19 +04:00
* [ignore ](./tags/ignore.md ) — игнорирование тегов Fenom
* [macro ](./tags/macro.md ) и `import` — пользовательские функции шаблонов
* [autoescape ](./tags/autoescape.md ) — экранирует фрагмент шаблона
* [raw ](./tags/raw.md ) — отключает экранирование фрагмента шаблона
* [unset ](./tags/unset.md ) — удаляет переменные
2015-03-08 09:17:14 +03:00
* или [добавьте ](./ext/extend.md#Добавление-тегов ) свои
2014-08-01 12:12:19 +04:00
***
### Модификаторы
[Использование ](./syntax.md#modifiers ) модификаторов.
* [upper ](./mods/upper.md ) aka `up` — конвертирование строки в верхний регистр
2015-03-08 09:17:14 +03:00
* [lower ](./mods/lower.md ) aka `low` — конвертирование строки в нижний регистр
2014-08-01 12:12:19 +04:00
* [date_format ](./mods/date_format.md ) - форматирует дату, штамп времени через strftime() функцию
* [date ](./mods/date.md ) - форматирует дату, штамп времени через date() функцию
* [truncate ](./mods/truncate.md ) — обрезает текст до указанной длины
* [escape ](./mods/escape.md ) aka `e` — экранирует строку
* [unescape ](./mods/unescape.md ) — убирает экранирование строки
* [strip ](./mods/strip.md ) — удаляет лишние пробелы
* [length ](./mods/length.md ) — подсчитывает длину строки, массива, объекта
* [in ](./mods/in.md ) — проверяет наличие значения в массиве
* [match ](./mods/match.md ) — проверяет соответствие паттерну
* [ematch ](./mods/ematch.md ) — проверяет соответствие регулярному выражению
* [replace ](./mods/replace.md ) — заменяет все вхождения подстроки на строку замену
* [ereplace ](./mods/ereplace.md ) — заменяет все соответсвия регулярному выражению на строку замену.
2015-02-20 23:07:42 +03:00
* [split ](./mods/split.md ) — разбивает строку по подстроке
* [esplit ](./mods/esplit.md ) — разбивает строку по регулярному выражению
2014-08-01 12:12:19 +04:00
* [join ](./mods/join.md ) — объединяет массив в строку
* так же разрешены функции: `json_encode` , `json_decode` , `count` , `is_string` , `is_array` , `is_numeric` , `is_int` , `is_object` ,
`strtotime` , `gettype` , `is_double` , `ip2long` , `long2ip` , `strip_tags` , `nl2br`
2014-10-31 00:24:56 +03:00
* или [добавте ](./ext/extend.md#Добавление-модификаторов ) свои
2014-08-01 12:12:19 +04:00
***
### Операторы
2014-08-07 13:36:04 +04:00
* [Арифметические операторы ](./operators.md#Арифметические-операторы ) — `+` , `-` , `*` , `/` , `%`
* [Логические операторы ](./operators.md#Логические-операторы ) — `||` , `&&` , `!$var` , `and` , `or` , `xor`
* [Операторы сравнения ](./operators.md#Операторы-сравнения ) — `>` , `>=` , `<` , `<=` , `==` , `!=` , `!==` , `<>`
* [Битовые операторы ](./operators.md#Битовые-операторы ) — `|` , `&` , `^` , `~$var` , `>>` , `<<`
* [Операторы присвоения ](./operators.md#Операторы-присвоения ) — `=` , `+=` , `-=` , `*=` , `/=` , `%=` , `&=` , `|=` , `^=` , `>>=` , `<<=`
2015-01-02 22:44:23 +03:00
* [Строковые операторы ](./operators.md#Строковые-операторы ) — `$str1 ~ $str2` , `$str1 ~~ $str2` , `$str1 ~= $str2`
2014-08-07 13:36:04 +04:00
* [Тернарные операторы ](./operators.md#Тернарные-операторы ) — `$a ? $b : $c` , `$a ! $b : $c` , `$a ?: $c` , `$a !: $c`
* [Проверяющие операторы ](./operators.md#Проверяющие-операторы ) — `$var?` , `$var!`
* [Оператор тестирования ](./operators.md#Оператор-тестирования ) — `is` , `is not`
* [Оператор содержания ](./operators.md#Оператор-содержания ) — `in` , `not in`
2014-08-01 12:12:19 +04:00
***
### Расширение
2014-08-08 15:58:50 +04:00
* [Источники шаблонов ](./ext/extend.md#Источники-шаблонов )
* [Добавление модификаторов ](./ext/extend.md#Добавление-модификаторов )
* [Добавление тегов ](./ext/extend.md#Добавление-тегов )
2015-03-08 09:17:14 +03:00
* [Расширение тестового оператора ](./ext/extend.md#Расширение-тестового-оператора )
2014-08-08 15:58:50 +04:00
* [Расширение глобальной переменной ](./ext/extend.md#Расширение-глобальной-переменной )
2014-08-01 12:12:19 +04:00
* [Расширение Fenom ](./ext/extend.md )
* [Add-ons ](./ext/extensions.md )