Класс DateTimeWidget
Класс виджета для создания виджета ввода даты и времени.
Этот класс предназначен как внутренняя реализация Cake\View\Helper\FormHelper и не предназначен для прямого использования.
- Cake\View\Widget\DateTimeWidget реализует Cake\View\Widget\WidgetInterface
Краткое описание свойств
- Виджет выпадающего списка.
$_selectprotected -
$_selectsprotectedСписок входов, которые могут быть отображеныarray -
$_templatesprotectedЭкземпляр шаблона.Cake\View\StringTemplate
Краткое описание методов
- __construct() publicКонструктор
- _adjustValue() protectedКорректировка $value на основе настроек округления.
- _daySelect() protectedГенерирует выбор дня
- _deconstructDate() protectedДекомпозирует переданное значение даты на все временные единицы
- _generateNumbers() protectedГенерирует диапазон чисел
- _getMonthNames() protectedВозвращает переведённый список названий месяцев
- _hourSelect() protectedГенерирует выбор часа
- _meridianSelect() protectedГенерирует выбор полудня/полуночи
- _minuteSelect() protectedГенерирует выбор минуты
- _monthSelect() protectedГенерирует выбор месяца
- _normalizeData() protectedНормализует данные.
- _secondSelect() protectedГенерирует выбор секунды
- _yearSelect() protectedГенерирует выбор года
- render() publicОтображает виджет даты и времени
- secureFields() publicВозвращает список полей, которые нужно защитить для этого виджета.
Подробное описание методов
__construct()source public
__construct( Cake\View\StringTemplate $templates , Cake\View\Widget\SelectBoxWidget $selectBox )
Конструктор
Параметры
- Cake\View\StringTemplate
$templates - Список шаблонов.
-
Cake\View\Widget\SelectBoxWidget$selectBox - Экземпляр виджета выпадающего списка.
_adjustValue()source protected
_adjustValue( integer $value , array $options )
Настройка $value в соответствии с настройками округления.
Параметры
- целое число
$value - Значение для настройки.
- массив
$options - Параметры, содержащие интервал и, возможно, округление.
Возвращает
целое числоЗначение для корректировки $value.
_daySelect()source protected
_daySelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выбор дня
Параметры
- массив
$options - Параметры для генерации выбора дня.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_deconstructDate()source protected
_deconstructDate( string|integer|array|DateTime|null $value , array $options )
Декомпозирует переданное значение даты на все временные единицы
Параметры
- строка|целое число|массив|DateTime|null
$value - Значение для декомпозиции.
- массив
$options - Параметры для преобразования.
Возвращает
массив_generateNumbers()source protected
_generateNumbers( integer $start , integer $end , array $options [] )
Генерирует диапазон чисел
Параметры
- leadingZeroKey - Установить в true, чтобы добавить ведущий 0 к однозначным ключам.
- leadingZeroValue - Установить в true, чтобы добавить ведущий 0 к однозначным значениям.
- interval - Интервал для генерации чисел. По умолчанию 1.
Параметры
- целое число
$start - Начало диапазона чисел для генерации
- целое число
$end - Конец диапазона чисел для генерации
- массив
$optionsнеобязательно [] - Список параметров.
Возвращает
массив_getMonthNames()source protected
_getMonthNames( boolean $leadingZero false )
Возвращает переведенный список названий месяцев
Параметры
- логическое значение
$leadingZeroнеобязательно false - Нужно ли генерировать ключи месяцев с ведущим нулем.
Возвращает
массив_hourSelect()source protected
_hourSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выбор часа
Параметры
- массив
$options - Параметры для генерации выбора часа
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_meridianSelect()source protected
_meridianSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выбор полудня
Параметры
- массив
$options - Параметры для генерации выбора полудня.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_minuteSelect()source protected
_minuteSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выбор минут
Параметры
- массив
$options - Параметры для генерации выбора минут.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_monthSelect()source protected
_monthSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выбор месяца
Параметры
- массив
$options - Параметры для построения выбора месяца
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_normalizeData()source protected
_normalizeData( array $data )
Нормализует данные.
Параметры
- массив
$data - Данные для нормализации.
Возвращает
массивНормализованные данные.
_secondSelect()source protected
_secondSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует дополнительный список выбора
Параметры
- array
$options - Набор параметров для генерации дополнительного списка выбора
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
string_yearSelect()source protected
_yearSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует список выбора года
Параметры
- array
$options - Список параметров.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
stringrender()source public
render( array $data , Cake\View\Form\ContextInterface $context )
Отображает виджет даты и времени
-
name- Установить имя поля ввода. -
disabled- либо true, либо массив опций для отключения. -
val- строка, целое число или объект DateTime даты и времени -
empty- установить в true для добавления пустого элемента вверху списка опций. Указать строку для определения отображаемого значения пустого элемента.
В дополнение к вышеперечисленным параметрам, следующие параметры позволяют управлять созданием элементов ввода. Установив любой параметр в false, вы можете отключить соответствующий элемент выбора. Кроме того, каждый элемент выбора позволяет установить дополнительные параметры, которые задаются как HTML-свойства элемента.
-
year- Массив параметров для списка выбора года. -
month- Массив параметров для списка выбора месяца. -
day- Массив параметров для списка выбора дня. -
hour- Массив параметров для списка выбора часа. -
minute- Массив параметров для списка выбора минуты. -
second- Установить в true для включения поля ввода секунд. По умолчанию false. -
meridian- Установить в true для включения поля ввода формата времени. По умолчанию false. Формат времени автоматически включится, если вы выберете 12-часовой формат.
Параметр year принимает параметры start и end. Они позволяют управлять диапазоном годов, которые будут сгенерированы. По умолчанию значения +-5 лет от текущей даты.
Параметр month принимает параметр name, который позволяет получить имена месяцев вместо номеров месяцев.
Параметр hour позволяет установить следующие параметры:
-
formatпараметр, принимающий значения 12 или 24, позволяющий указать желаемый формат часов. -
start- Час начала списка опций. -
end- Час окончания списка опций.
Начальные и конечные значения зависят от используемого формата. Если значение выходит за рамки заданного диапазона, оно не будет включено.
Параметр minute позволяет определить следующие параметры:
-
interval- Интервал округления значений опций. -
round- Принимаетupилиdown. Определяет направление округления текущего значения для соответствия опциям списка выбора.
Параметры
- array
$data - Данные для отображения.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
stringСгенерированный список выбора.
Исключения
RuntimeExceptionПри некорректных данных параметров.
Реализация
Cake\View\Widget\WidgetInterface::render() secureFields()source public
secureFields( array $data )
Возвращает список полей, которые необходимо защитить для этого виджета.
Если поле выбора часов находится в 24-часовом режиме (null или format=24), поле выбора формата времени будет опущено.
Параметры
- array
$data - Данные для отображения.
Возвращает
arrayМассив полей для защиты.
Реализация
Cake\View\Widget\WidgetInterface::secureFields() Подробное описание свойств
$_selectssource
protected array
Список элементов ввода, которые могут быть отображены
[
'year',
'month',
'day',
'hour',
'minute',
'second',
'meridian',
]
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.2/class-Cake.View.Widget.DateTimeWidget.html