Креатив
Верный ход
Качество
Надёжность

Обычно, когда мы разрабатываем PHP скрипты, мы работаем активно с хешами запросов: $ _GET, $ _POST, $ _FILES, $ _COOKIE, и $ _REQUEST. В Joomla!, вместо того, чтобы непосредственно использовать их, мы используем статический класс JRequest. Мы используем его, потому что это позволяет нам обрабатывать ввод одновременно получая его, это уменьшает требуемый объем кода и помогает улучшить безопасность.

Запросы хэшей $ _GET, $ _POST, $ _FILES, $ _COOKIE и $ _REQUEST по-прежнему доступны, а в случаях, когда мы переносим приложение, нам не обязательно заменять эти хэши.

Два метода, которые мы используем наиболее часто - это JRequest::setVar() и JRequest::getVar(). Как ясно из названия, один принимает запросы (get), другой передаёт их (set). В этом примере мы получаем значение id; если идентификатор не установлен, возвращается значение по умолчанию, 0 (значение по умолчанию не является обязательным).

$id = JRequest::getVar('id', 0);

Метод JRequest::setVar() используется для установки значений в запрос. По сравнению с JRequest::getVar(), этот метод используется относительно редко. Чаще всего он используется для установки значения по умолчанию. Например, мы бы могли установить значение по умолчанию для task в компоненте, если оно ещё не выбрано:

JRequest::setVar('task', 'someDefaultTask');

Полезный трюк, чтобы гарантировать что переменная установлена, заключается в использовании двух методов в совокупности. В этом примере, если name не установлено, мы значение по умолчанию 'unknown'.

JRequest::setVar('name', JRequest::getVar('name', 'unknown'));

Некоторые другие удобные методы JRequest - это getInt(), getFloat(), getBool(), getWord(), getCmd(), и getString(). Если мы используем эти методы, мы гарантируем, что возвращаемое значение имеет определенный тип.

Важно ознакомится с методами JRequest, описанными выше, поскольку они широко используются в Joomla!. Кроме того, мы будем использовать их повторно в коде примеров, представленных в этой книге.

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

Вернуться к оглавлению

Войти на сайт

Запомнить меня

Новости

  • Перевод Mastering Joomla! 1.5

    14.03.2013

    Продолжается перевод книги "Mastering Joomla! 1.5". На данный момент полностью переведено 2 главы. Полностью перевод книги...

    Подробнее...

  • Модернизация сайта

    28.05.2012

    Уважаемые посетители! Мы полностью модернизировали наш сайт и надеемся что сейчас им станет...

    Подробнее...