Variable scope

MiRacLe

просто Чудо
Хочется "странного":


PHP:
    function vars () {
        return array('test1' => 1, 'test2' => 2, 'test3' => array('test4' => 4));
    }

    function modify_vars() {
       // ???
    }

    function test() {
        $vars = vars();
        extract($vars);
        modify_vars(); // вызовом этой функции хочется изменить "локальную" переменную $test1
        var_dump(get_defined_vars());
    }

    test();
Откуда желание? - реальный код представляет из себя "шаблонный движок" и после extract происходит include "шаблон", в этом самом "шаблон"-е надо изменить кодировку строковых значений в $vars, а код, который этим будет заниматься не хочется оставлять в шаблоне.

Почему не менять данные ДО include? - менять кодировку надо не для всех шаблонов, выносить признак "кодировка" за пределы шаблона не хочется.

Какие-нибудь безумные идеи?
 

A1x

Новичок
может сделать modify по массиву перед extract а не после?
 
Сверху