Merge remote-tracking branch 'remotes/origin/master' into develop

# Conflicts:
#	src/Fenom.php
This commit is contained in:
bzick 2015-06-03 11:36:05 +03:00
commit 10bc614a84
5 changed files with 22 additions and 13 deletions

View File

@ -23,12 +23,12 @@ $fenom = Fenom::factory($tpl_dir, $compile_dir, $options);
$fenom->setOptions($options);
```
В обоих случаях аргумет `$options` может быть массивом или битовой маской.
В массиве ключем должно быть название параметра, а ключем — булевый флаг `true` (активировать) или `false` (деактивировать).
Битавая маска должна состоять из занчений констант из таблице ниже
В массиве ключем должно быть название параметра, а значением — булевый флаг `true` (активировать) или `false` (деактивировать).
Битавая маска должна состоять из значений констант, согласно следующей таблице
| Название параметра | Константа | Описание | Эффект |
| ---------------------- | ------------------------- | ------------ | ------- |
| *disable_methods* | `Fenom::DENY_METHODS` | отключает воззможность вызова методов в шаблоне | |
| *disable_methods* | `Fenom::DENY_METHODS` | отключает возможность вызова методов в шаблоне | |
| *disable_native_funcs* | `Fenom::DENY_NATIVE_FUNCS`| отключает возможность использования фунций PHP, за исключением разрешенных | |
| *auto_reload* | `Fenom::AUTO_RELOAD` | автоматически пересобирать кеш шаблона если шаблон изменился | понижает производительность |
| *force_compile* | `Fenom::FORCE_COMPILE` | каждый раз пересобирать кеш шаблонов (рекоммендуется только для отладки)| очень сильно понижает производительность |

View File

@ -4,7 +4,7 @@
# Добавление тегов
В шаблонизаторе принято различать два типа тегов: омпиляторы_ и ункции_.
Компиляторы вызываются во время преобразования кода шаблона в PHP код и возвращяю PHP код который будет вставлен вместо тега.
Компиляторы вызываются во время преобразования кода шаблона в PHP код и возвращяют PHP код который будет вставлен вместо тега.
А функции вызываются непременно в момент выполнения шаблона и возвращают непосредственно данные которые будут отображены.
Среди тегов как и в HTML есть строчные и блоковые теги.
@ -111,7 +111,7 @@ $fenom->addModifier('my_modifier', function ($variable, $param1, $param2) {
});
```
# Расширение тестовго оператора
# Расширение тестового оператора
```php
$fenom->addTest(string $name, string $code);

View File

@ -30,17 +30,17 @@
* [if](./tags/if.md), `elseif` и `else` — условный оператор
* [foreach](./tags/foreach.md), `foreaelse`, `break` and `continue` — перебор элементов массива или объекта
* [for](./tags/for.md), `forelse`, `break` and `continue` — цикл
* [switch](./tags/switch.md), `case` — груповой условный оператор
* [switch](./tags/switch.md), `case` — групповой условный оператор
* [cycle](./tags/cycle.md) — циклицеский перебор массива значений
* [include](./tags/include.md), `insert` — вставляет и испольняет указанный шаблон
* [include](./tags/include.md), `insert` — вставляет и исполняет указанный шаблон
* [extends](./tags/extends.md), `use`, `block` и `parent` — [наследование](./inheritance.md) шаблонов
* [filter](./tags/filter.md) — примение модификаторов к фрагменту шаблона
* [filter](./tags/filter.md) — применение модификаторов к фрагменту шаблона
* [ignore](./tags/ignore.md) — игнорирование тегов Fenom
* [macro](./tags/macro.md) и `import` — пользовательские функции шаблонов
* [autoescape](./tags/autoescape.md) — экранирует фрагмент шаблона
* [raw](./tags/raw.md) — отключает экранирование фрагмента шаблона
* [unset](./tags/unset.md) — удаляет переменные
* или [добавте](./ext/extend.md#Добавление-тегов) свои
* или [добавьте](./ext/extend.md#Добавление-тегов) свои
***
@ -50,7 +50,7 @@
[Использование](./syntax.md#modifiers) модификаторов.
* [upper](./mods/upper.md) aka `up` — конвертирование строки в верхний регистр
* [lower](./mods/lower.md) aka `low` — конвертирование строки в низкий регистр
* [lower](./mods/lower.md) aka `low` — конвертирование строки в нижний регистр
* [date_format](./mods/date_format.md) - форматирует дату, штамп времени через strftime() функцию
* [date](./mods/date.md) - форматирует дату, штамп времени через date() функцию
* [truncate](./mods/truncate.md) — обрезает текст до указанной длины
@ -92,7 +92,7 @@
* [Источники шаблонов](./ext/extend.md#Источники-шаблонов)
* [Добавление модификаторов](./ext/extend.md#Добавление-модификаторов)
* [Добавление тегов](./ext/extend.md#Добавление-тегов)
* [Расширение тестового оператора](./ext/extend.md#Расширение-тестовго-оператора)
* [Расширение тестового оператора](./ext/extend.md#Расширение-тестового-оператора)
* [Расширение глобальной переменной](./ext/extend.md#Расширение-глобальной-переменной)
* [Расширение Fenom](./ext/extend.md)
* [Add-ons](./ext/extensions.md)

View File

@ -16,4 +16,13 @@
```smarty
var data = { "time": obj.ts };
```
```
Так же для игнорирования синтаксиса Fenom можно использовать модификатор `:ignore` для любого блочного тега.
```smarty
{if:ignore $cdn.yandex}
var item = {cdn: "//yandex.st/"};
{/if}
{script:ignore} ... {/script}
{foreach:ignore ...} ... {/foreach}
```

View File

@ -18,7 +18,7 @@ use Fenom\Template;
*/
class Fenom
{
const VERSION = '2.4';
const VERSION = '2.6';
const REV = 1;
/* Actions */
const INLINE_COMPILER = 1;