mirror of
https://github.com/fenom-template/fenom.git
synced 2023-08-10 21:13:07 +03:00
87 lines
3.9 KiB
Markdown
87 lines
3.9 KiB
Markdown
Documentation
|
|
=============
|
|
|
|
**Please, help translate documentation to english or fix typos. [Read more](./helpme.md).**
|
|
|
|
### Fenom
|
|
|
|
* [Quick start](./start.md)
|
|
* [Usage](./start.md#install-fenom)
|
|
* [Framework adapters](./adapters.md)
|
|
* [For developers](./dev/readme.md)
|
|
* [Configuration](./configuration.md)
|
|
* [Syntax](./syntax.md)
|
|
* [Operators](./operators.md)
|
|
|
|
***
|
|
|
|
### Tags
|
|
|
|
[Usage](./syntax.md#tags)
|
|
|
|
* [var](./tags/var.md) — define variable
|
|
* [if](./tags/if.md), `elseif` and `else` — conditional statement
|
|
* [foreach](./tags/foreach.md), `foreaelse`, `break` and `continue` — traversing items in an array or object
|
|
* [for](./tags/for.md), `forelse`, `break` and `continue` — loop statement
|
|
* [switch](./tags/switch.md), `case`, `default` —
|
|
* [cycle](./tags/cycle.md) — cycles on an array of values
|
|
* [include](./tags/include.md), `insert` — includes and evaluates the specified template
|
|
* [extends](./tags/extends.md), `use`, `block` and `parent` — template inheritance
|
|
* [filter](./tags/filter.md) — apply modifier on a block of template data
|
|
* [ignore](./tags/ignore.md) — ignore Fenom syntax
|
|
* [macro](./tags/macro.md) and `import` — template functions
|
|
* [autoescape](./tags/autoescape.md) — escape template fragment
|
|
* [raw](./tags/raw.md) — unescape template fragment
|
|
* [unset](./tags/unset.md) — unset a given variables
|
|
* or [add](./ext/extend.md#add-tags) yours
|
|
|
|
|
|
***
|
|
|
|
### Modifiers
|
|
|
|
[Usage](./syntax.md#modifiers)
|
|
|
|
* [upper](./mods/upper.md) aka `up` — convert to uppercase a string
|
|
* [lower](./mods/lower.md) aka `low` — convert to lowercase a string
|
|
* [date_format](./mods/date_format.md) - format date, timestamp via strftime() function
|
|
* [date](./mods/date.md) - format date, timestamp via date() function
|
|
* [truncate](./mods/truncate.md) — truncate thee string to specified length
|
|
* [escape](./mods/escape.md) aka `e` — escape the string
|
|
* [unescape](./mods/unescape.md) — unescape the string
|
|
* [strip](./mods/strip.md) — remove extra whitespaces
|
|
* [length](./mods/length.md) — calculate length of string, array, object
|
|
* [in](./mods/in.md) — find value in string or array
|
|
* [match](./mods/match.md) — match string against a pattern.
|
|
* [ematch](./mods/ematch.md) — perform a regular expression match.
|
|
* [replace](./mods/replace.md) — replace all occurrences of the search string with the replacement string.
|
|
* [ereplace](./mods/ereplace.md) — perform a regular expression search and replace.
|
|
* [split](./mods/split.md) — split a string by string.
|
|
* [esplit](./mods/esplit.md) — split string by a regular expression.
|
|
* [join](./mods/join.md) — join array elements with a string.
|
|
* allowed functions: `json_encode`, `json_decode`, `count`, `is_string`, `is_array`, `is_numeric`, `is_int`, `is_object`,
|
|
`strtotime`, `gettype`, `is_double`, `ip2long`, `long2ip`, `strip_tags`, `nl2br`
|
|
* or [add](./ext/extend.md#add-modifiers) yours
|
|
|
|
***
|
|
|
|
### Operators
|
|
|
|
* [Arithmetic operators](./operators.md#arithmetic-operators) — `+`, `-`, `*`, `/`, `%`
|
|
* [Logical operators](./operators.md#logical-operators) — `||`, `&&`, `!$var`, `and`, `or`, `xor`
|
|
* [Comparison operators](./operators.md#comparison-operators) — `>`, `>=`, `<`, `<=`, `==`, `!=`, `!==`, `<>`
|
|
* [Bitwise operators](./operators.md#bitwise-operators) — `|`, `&`, `^`, `~$var`, `>>`, `<<`
|
|
* [Assignment operators](./operators.md#assignment-operators) — `=`, `+=`, `-=`, `*=`, `/=`, `%=`, `&=`, `|=`, `^=`, `>>=`, `<<=`
|
|
* [String concatenation operator](./operators.md#string-operator) — `$str1 ~ $str2`
|
|
* [Ternary operators](./operators.md#ternary-operators) — `$a ? $b : $c`, `$a ! $b : $c`, `$a ?: $c`, `$a !: $c`
|
|
* [Check operators](./operators.md#check-operators) — `$var?`, `$var!`
|
|
* [Test operator](./operators.md#test-operator) — `is`, `is not`
|
|
* [Containment operator](./operators.md#containment-operator) — `in`, `not in`
|
|
|
|
***
|
|
|
|
### Extends
|
|
|
|
* [Extend Fenom](./ext/extend.md)
|
|
* [Add-ons](./ext/extensions.md)
|