Блог старого компьютера

Блог старого компьютера


Главная Joomla Работаем с переменными joomla

Работаем с переменными joomla

29.01.2014 04:04 Администратор Joomla
Печать PDF

Сегодня я решил поговорить о работе с переменными joomla.  Ничего особвенного и сложного тут нету. К примеру давайте рассмотрим как бы вы поступили если бы вам необходимо было принять данные отправленные методом пост. Думаю что каждый ответит что получит их из глобального массива $_POST обратившись следующим образом $_POST['namePost'].

Если вы пишите для joomla то подход с помощью такого метода будет совершенно некорректным так как фреймворк на котором написана joomla имеет свои функции для работы с запросами, будь то гет запрос или пост.

К примеру вы хотите узнать какой сейчас компонент выводит информацию то нужно воспользоваться следующим кодом:

$option = JRequest::getVar('option', NULL);

В данном случае переменная $option будет содержать название компонента который в данным момент вывел информацию на экран (к примеру com_content).

Поясню что помню по методу getVar, чтоб вам было понятнее. Метод принимает 5 параметров.

$name = JRequest::getVar('name', '0', 'get', 'string', JREQUEST_NOTRIM);

  1. Первый параметр это название так сказать реквеста
  2. Второй параметр это значение по умолчанию, к примеру если мы получили пустой запрос
  3. Третий параметр это тип запроса, допустимы следующие типы: GET, POST, FILES, COOKIE, ENV, SERVER, REQUEST. Хотелось бы порекомендовать всегда указывать конкретный тип для того чтоб не созать какую либо уязвимость
  4. Четвертым параметром является тип переменной которую хотим принимать. Перечислю возможные типы int, float, bool, word, cmd, string
  5. Пятый параметр это фильтрация которую необходимо приминить к полученным данным. На сколько помню есть 3 типа JREQUEST_NOTRIM, JREQUEST_ALLOWRAW, JREQUEST_ALLOWHTML. Первый тип фильтрации обрезает по краям пробельные символы. Второй отключает всб фильтрацию, третий разрешает html, но все равно html будет чистится определенным образом.

Вот вроде бы все что знал про работу с переменными рассказал. Хотя думаю еще будет полезно добавить что есть и другие подобные методы такие как getInt, getFloat, getBool, getWord, getCmd, getString, get. Эти методы выполяют такую же задачу как и getVar, но не имеют типа переменной и фильтрации, которые по сути тут и не нужны.

Добавить комментарий


Защитный код
Обновить

Поиск

Голосование

Что Вы думаете на счет битрикса?
 

Все материалы раздела