С момента своего появления архитектура RESTful переопределила то, как мы думаем (и создаем) программные приложения, разбивая сложные экосистемы приложений на более мелкие, более целенаправленные приложения, взаимодействующие друг с другом посредством вызовов RESTful. Архитектура клиент-сервер позволяет веб-клиентам и мобильным приложениям взаимодействовать с одной и той же инфраструктурой (например, с помощью API на стороне сервера), чтобы обеспечить бесперебойную работу пользователей. В этом руководстве я покажу вам, как создать RESTful API с помощью Yii framework (версия 2) — высокопроизводительного PHP-фреймворка на основе компонентов. Предпосылки В этом руководстве вам поможет базовое понимание фреймворка Yii и PHP. Тем…
Read MoreРубрика: Yii2
Удаление пробелов в начале и в конце от каждого сообщения формы к модели? — Yii2
Функция: — хотите использовать метод trim() в контроллере beforeAction для удаления пробелов слева и справа от каждого сообщения? Лучший способ использования trim в модельных правилах, подобных этому либо см. валидаторы
Read Morecomposer help
Usage: help [options] [—] [<command_name>] Arguments: command The command to execute command_name The command name [default: «help»] Options: —xml To output help as XML —format=FORMAT The output format (txt, xml, json, or md) [default: «txt»] —raw To output raw command help -h, —help Display this help message -q, —quiet Do not output any message -V, —version Display this application version —ansi Force ANSI output —no-ansi Disable ANSI output -n, —no-interaction Do not ask any interactive question —profile …
Read MoreПодключение AutoComplete в Yii 2.0
AutoComplete — класс для автозаполнения строки ввода. К примеру вы захотели сделать на своем сайте функцию помогающую заполнять поле город. При вводе начальных символов всплывает подсказка со списком городов имеющих в названиях введенные вами символы. Для использования класса AutoComplete в Yii 2.0 нам необходимо его подключить к своему шаблону. Как правило подключения классов в yii 2.0 осуществляется верхней части шаблона Для использования jui подключите его к фреймворку Вставьте в composer.json file и потом update composer( используйте код ) Так же надо будет указать путь до модели откуда будут браться данные.…
Read MoreКэширование данных — Yii2
Кэширование данных заключается в сохранении некоторой переменной PHP в кэше и её последующем извлечении. Оно является основой для расширенных возможностей, таких как кэширование запросов и кэширование страниц. Типичные варианты кэширования и получения данных: Когда анонимной функции требуются данные из внешней области видимости: Компоненты кэширования Кэширование данных опирается на компоненты кэширования, которые представляют различные хранилища, такие как память, файлы и базы данных. Кеш-компоненты, как правило, зарегистрированы в качестве компонентов приложения, так что их можно настраивать и обращаться к ним глобально. Кэширование с использованием файлов: Кэширование с использованием Memcached с двумя серверами:…
Read MoreМаршрутизация и создание URL — Yii2
Когда запрос от браузера поступает в файл index.php приложения, браузер анализируется на предмет того, какой контроллер и метод нужно вызвать, чтобы сформировать страницу. Данный процесс называется маршрутизацией. Обратный процесс — создание URL-адреса, когда известны контроллер и метод, которые необходимо вызвать. Менеджер URL Менеджер URL представляет собой компонент приложения, который используется для анализа входящих запросов с помощью метода parseRequest(), а также для создания новых URL-адресов с помощью метода createUrl(). Запросы разбираются на маршруты, которые принимают вид controller/action. В данном случае менеджер URL-адресов сообщает Yii2, какой контроллер создавать и какой метод вызывать. Использование метода createUrl() для формирования URL-адресов гарантирует,…
Read MoreИспользование сессии — Yii2
Сессия позволяет сохранять пользовательские данные между запросами. При использовании чистого PHP можно получить доступ к этим данным через глобальную переменную $_SESSION. Yii2 инкапсулирует сессию в объект, что дает возможность обращаться к пользовательским данным в объектно-ориентированном стиле. К сессии можно получить доступ через компонент приложения session, который по умолчанию является экземпляром класса yii\web\Session. Открытие и закрытие сессии Открыть и закрыть сессию можно следующим образом: Можно вызывать open() и close() многократно без возникновения ошибок — внутри компонента все методы проверяют сессию на предмет того, открыта она или нет. Доступ к данным сессии Получить доступ к сохраненным в сессию данным…
Read MoreМетки полей формы — Yii2
По умолчанию, метки полей формы автоматически генерируются из названия поля. Генерация выполняется методом generateAttributeLabel() класса yii\base\Model. Он преобразует первую букву каждого слова в верхний регистр, если имена переменных состоят из нескольких слов. Например, username станет Username, а firstName станет First Name. Если такой вариант не устраивает, нужно переопределить метод yii\base\Model::attributeLabels(): Теперь при создании формы в шаблоне, метки задавать не нужно: Интернационализация
Read MoreВиджет ActiveForm — Yii2
Рассмотрим часто использующийся при разработке виджет ActiveForm. Виджет позволяет добавить на сайт форму с полями ввода, кнопками, списками выбора, чекбоксами, радио кнопками. Для создания формы подключаем в шаблоне следующие классы: Инициализация формы Текстовое поле Простое текстовое поле Текстовое поле с подсказкой и описанием Текстовое поле для e-mail Простое поле для e-mail Поле с подсказкой и описанием Поле для ввода пароля Простое поле для пароля Поле с подсказкой и описанием Многострочное текстовое поле Простое многострочное поле Многострочное поле определенного размера с описанием
Read MoreИнтернационализация — Yii2
Интернационализация (i18n) является частью процесса разработки приложения, которое может быть адаптировано для нескольких языков без изменения программной логики. Это особенно важно для веб-приложений, так как потенциальные пользователи могут приходить из разных стран. В Yii приложении определены два языка: исходный язык и язык перевода. На исходном языке написаны сообщения в коде приложения. Если исходным языком задан английский, то в коде можно использовать конструкцию: Язык перевода определяет, в каком виде будет отображаться текущая страница, т.е. на какой язык будут переведены оригинальные сообщения. Этот параметр может быть задан в конфигурации приложения: Кроме того,…
Read More