Не могу использовать имя переменной GET в макросе Twig

Если я использую переменную ‘GET’ в макросе Twig, я получаю следующую ошибку:

Fatal error: Cannot re-assign auto-global variable _GET in /var/www/basedir/vendor/twig/twig/lib/Twig/Environment.php(331) : eval()'d code on line 21

Почесав голову, я обнаружил, что могу сменить имя с «GET» на «get», и ошибка исчезнет. Впрочем, нормально использовать переменную GET в шаблоне, только не в макросе.

Я мог и буду менять имя. Мой вопрос: почему это происходит, и есть ли другие недопустимые имена переменных, о которых я должен знать?

<?php
require_once '../../../vendor/autoload.php';
Twig_Autoloader::register();
try {
$loader = new Twig_Loader_Filesystem('templates');
$twig = new Twig_Environment($loader, array('debug' => true,));
$twig->addExtension(new Twig_Extension_Debug());
echo $twig->render('get.html', array('GET'=>$_GET));
} catch (Exception $e) {
die ('ERROR: ' . $e->getMessage());
}
?>

get.html

{% import "forms.html" as forms %}

{{ forms.someFunction(GET) }}

forms.html

{% macro someFunction(GET) %}
{{ dump(GET) }}
{% endmacro %}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]