mirror of
https://github.com/fenom-template/fenom.git
synced 2023-08-10 21:13:07 +03:00
Add docs drafts
This commit is contained in:
@ -1,31 +1,27 @@
|
||||
Синтаксис
|
||||
=========
|
||||
|
||||
Базовый синтаксис, по бОльшей части, унаследован от Smarty3.
|
||||
|
||||
### Переменные
|
||||
|
||||
#### Вывод переменной
|
||||
### Вывод переменной
|
||||
|
||||
Вывод значений переменных в шаблонизаторе Aspect идентичен правилам вывода шаблонизатора Smarty
|
||||
|
||||
```smarty
|
||||
{$foo} <-- displaying a simple variable (non array/object)
|
||||
{$foo[4]} <-- display the 5th element of a zero-indexed array
|
||||
{$foo}
|
||||
{$foo[4]}
|
||||
{$foo.4}
|
||||
{$foo.bar} <-- display the "bar" key value of an array, similar to PHP $foo['bar']
|
||||
{$foo.bar}
|
||||
{$foo.'bar'}
|
||||
{$foo."bar"}
|
||||
{$foo[bar]}
|
||||
{$foo['bar']}
|
||||
{$foo["bar"]}
|
||||
{$foo.$bar} <-- display variable key value of an array, similar to PHP $foo[$bar]
|
||||
{$foo.$bar}
|
||||
{$foo[$bar]}
|
||||
{$foo->bar} <-- display the object property "bar"
|
||||
{$foo->bar()} <-- display the return value of object method "bar"
|
||||
{$foo->bar}
|
||||
{$foo->bar()}
|
||||
```
|
||||
|
||||
#### Комбинированные варианты
|
||||
Комбинированные варианты
|
||||
|
||||
```smarty
|
||||
{$foo.bar.baz}
|
||||
@ -33,11 +29,11 @@
|
||||
{$foo[4].baz}
|
||||
{$foo[4].$baz}
|
||||
{$foo.bar.baz[4]}
|
||||
{$foo->bar($baz, 2, $bar)} <-- passing parameters
|
||||
{"foo"} <-- static values are allowed
|
||||
{$foo->bar($baz, 2, $bar)}
|
||||
{"foo"}
|
||||
```
|
||||
|
||||
#### Математические операции
|
||||
### Математические операции
|
||||
|
||||
```smarty
|
||||
{$x+$y} // will output the sum of x and y.
|
||||
@ -45,7 +41,7 @@
|
||||
{$foo[$x+3]*$x+3*$y % 3}
|
||||
```
|
||||
|
||||
#### Объявление переменных
|
||||
### Объявление переменных
|
||||
|
||||
```smarty
|
||||
{var $foo = $x + $y}
|
||||
@ -63,7 +59,7 @@
|
||||
{var $foo=[1,[9,8],3]} // can be nested
|
||||
```
|
||||
|
||||
#### Работа с объектами
|
||||
### Работа с объектами
|
||||
|
||||
```smarty
|
||||
{$object->method1($x)->method2($y)}
|
||||
@ -71,7 +67,7 @@
|
||||
```
|
||||
|
||||
|
||||
#### Работа со строками
|
||||
### Работа со строками
|
||||
|
||||
Строки в Aspect обрабатываются идентично правилам подстановки переменных в строки в PHP, т.е. в двойных кавычках переменная заменяется на её значение, в одинарных замены не происходит.
|
||||
В отличие от Smarty в строках не обрабатываются управляющие конструкции, например "if", но работают модификаторы.
|
||||
@ -104,7 +100,7 @@
|
||||
{var $foo="Ivan"|upper} переменная $foo будет содержать "IVAN"
|
||||
```
|
||||
|
||||
Подробнее модификаторы описаны в разделе [модификаторы](docs/modifiers.md)
|
||||
Подробнее модификаторы описаны в разделе [модификаторы](./docs/modifiers.md)
|
||||
|
||||
### Функции
|
||||
|
||||
@ -128,7 +124,7 @@
|
||||
{/if}
|
||||
```
|
||||
|
||||
#### Аргументы
|
||||
Аргументы
|
||||
|
||||
Аргументы принимают любой формат переменных, в том числе результаты арифметических операций и модификаторов.
|
||||
|
||||
@ -156,18 +152,18 @@
|
||||
|
||||
|
||||
|
||||
### Вставка JS
|
||||
###
|
||||
|
||||
Как и в Smarty, в шаблонизаторе Aspect используются фигурные скобки для отделения HTML от кода Aspect.
|
||||
Если требуется вывести текст, содержащий фигурные скобки помните о следующих возможностях:
|
||||
|
||||
1. Использование блочного тега `{literal}{/literal}`. Текст внутри этого тега не компилируется шаблонизатором и выводится "как есть".
|
||||
1. Использование блочного тега `{ignore}{/ignore}`. Текст внутри этого тега не компилируется шаблонизатором и выводится "как есть".
|
||||
2. Если после открывающей фигурной скобки есть пробельный символ, то она не воспринимается как разделитель Aspect и код после неё выводится "как есть".
|
||||
|
||||
Пример:
|
||||
|
||||
```smarty
|
||||
{literal}
|
||||
{ignore}
|
||||
<style>
|
||||
h1 {font-size: 24px; color: #F00;}
|
||||
</style>
|
||||
@ -178,7 +174,7 @@
|
||||
e.innerHTML = text;
|
||||
document.body.appendChild(e);
|
||||
})('test');
|
||||
</script>
|
||||
</ignore>
|
||||
```
|
||||
|
||||
Выведет
|
||||
|
Reference in New Issue
Block a user