Как лучше заменить глобальные переменные в расширениях Joomla

Каталог расширений Joomla заставляет разработчиков не использовать глобальные переменные (суперглобальные), такие как $_SERVER, $_REQUEST, $_POST, $_GET, $_FILES, $_ENV, $_COOKIE, and $_SESSION, для предотвращения SQL-инъекций.

Больше всего меня беспокоит переменная $_GET, которая широко используется в моем расширении. Как лучше всего заменить $_GET, не внося слишком много изменений в приложение?


person Wink    schedule 23.01.2020    source источник


Ответы (1)


Объект JApplication имеет свойство input, которое содержит для вас все данные $_POST и $_GET. Это работает примерно так:

$jinput = $JFactory::getApplication()->input;
$data = $jinput->get('getparamter');

Существует множество документации по использованию этого объекта ввода. Документация по API

$_SERVER, $_SESSION и другие заменяются userState и подобными механизмами, в Joomla действительно нет необходимости использовать суперглобальные переменные.

person user3154108    schedule 24.01.2020