Max Replace Страничка сгенерированна при помощи PHP - шаблонизатора MaxReplace
Файлы использованные при генерации: replace.txt, main.htm, top.htm, blue.htm, menu.txt, lang.txt, blue_baners.htm, baners.txt, gray.htm, plugins.htm, plugins.txt, buttom.htm
Время генерации: 0.0474269390106 микросекунд
Меню
Язык
Банеры
Плагины
Дополнительно подключаемые модули
"...Шаблонизатор - это PHP код, который обрабатывает указанный шаблон или файл шаблона, и в соответствии с маркерами, вставляет данные..."

Но в большинстве случаев этого не достаточно, появляется необходимость вставки PHP кода в сам шаблон, и тем самым теряется идея разделения HTML и PHP кода.

Чтобы избежать «винегрета» из смеси PHP и HTML кода, в MaxReplace реализована возможность подключение так называемых файлов плагинов, в которых находятся специально размеченные пользовательские функции.
Пример плагина:
<?php
/***Plugin for MaxReplace*** /
Name = calc;
Params Count = 0;
When Replace = afterall;
Description = Подсчет суммы, разницы и произведения, подряд идущих, разделенных запятой, цифр.
Example: [calc:-1,5,6,*8]
Result: 80
/ ****End of Plugin Tools****/
function calc()
    {
        
$j=0;
        for (
$i=0$i<func_num_args(); $i++) 
            {
                
$s=func_get_arg($i);
                if ((string)
strrpos($s,"*")=="")
                    
$j=$j+(int)$s;
                else
                    
$j=$j*((int)str_replace("*","",$s));
            }
        return 
$j;
    }
?>
Функции подключаемых плагинов работают по принципу "маркеров-методов", их можно вызывать в любом месте шаблона, и в них также можно передавать параметры.

Функцией плагина можно назначить любую вашу функцию, для этого необходимо вынести функцию в отдельный файл и перед объявлением функции поместить в комментариях "параметры функции", а за тем подключить данный файл как плагин.
**ВНИМАНИЕ!!! названия функций и используемых в них переменных не должны совпадать с зарезервированными именами функций и переменных Max Replace, так же не рекомендуется обращаться к глобальным переменным из плагинов.

Обязательные параметры:
Plugin for MaxReplace - для определения начала "параметров функции" (учитывается регистр);
End of Plugin Tools - для определение конца "параметров функции";
Name = calc; - название функции.
Желательные параметры:
Params Count = 0; - для определения количества передаваемых параметров.
  • Если 0 то передаются все параметры (по умолчанию),
  • Если -1, значит без параметров (параметрами считается весь текст идущий после названия функции и до "]", для данного примера параметр(0) будет ":-1")
  • Если >0, то передаются фиксированное число параметров.
    When Replace = afterall; - для определения момента замены.
  • Если beforerall, то замена произойдет в самом начале, даже перед автошаблонизированием.
  • Если before, то замена будет происходить после строковой замены.
  • Если after - замена будет происходить после каждого цикла автошаблонизирования (по умолчанию),
  • Если afterall, то замена произойдет в самом конце, перед самым выводом данных.
    **ВНИМАНИЕ!!! при включении функции кэширования, функции подключенных плагинов объявленные как before и after, работать не будут.
    Необязательные:
    Description = Подсчет … цифр. - описание функции.
    Example: [calc:-1,5,6,*8] - пример вызова.
    Result: 80 - результат вызова.

    Обработчик текстовых блоков
    Обработчики текстовых блоков - функции способные обрабатывать большие текстовые блоки. Для того чтобы объявить функцию плагина как "Обработчик текстовых блоков", необходимо в "параметрах функции" объявить параметр TextArea;
    Пример плагина:
    <?php
    /***Plugin for MaxReplace*** /
    Name = strlower;
    When Replace = afterall;
    TextArea;
    Description = Переводит строку в нижний регистр.
    Example: [strlower SmALL tEXt strlower]
    Result:  small text 
    /  ****End of Plugin Tools****/
    function strlower($text)
        {
            return 
    strtolower($text);
        }
    ?>
    Так как в качестве параметра передается весь текст между [ strlower и strlower ], то Params Count можно опустить.
  • © 2008 ZuBAR