Класс DateTimeWidget
Класс виджета для генерации виджета ввода даты и времени.
Этот класс предназначен как внутренняя реализация деталей Cake\View\Helper\FormHelper и не предназначен для прямого использования.
- Cake\View\Widget\DateTimeWidget реализует Cake\View\Widget\WidgetInterface
Краткое описание свойств
- Виджет выпадающего списка.
$_selectprotected -
$_selectsprotectedСписок вводимых данных, которые могут быть отображеныarray - Экземпляр шаблона.
$_templatesprotected
Краткое описание методов
- __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 - Конец диапазона чисел для генерации
- массив
$optionsoptional [] - Список опций.
Возвращает
массив_getMonthNames()source protected
_getMonthNames( boolean $leadingZero false )
Возвращает переведённый список имён месяцев
Параметры
- логическое значение
$leadingZerooptional 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 )
Генерирует второй выпадающий список
Параметры
- массив
$options - Параметры для генерации второго выпадающего списка
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строка_yearSelect()source protected
_yearSelect( array $options , Cake\View\Form\ContextInterface $context )
Генерирует выпадающий список для выбора года
Параметры
- массив
$options - Список параметров.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строкаrender()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. Определяет, в какую сторону текущее значение должно быть округлено для соответствия опциям выпадающего списка.
Параметры
- массив
$data - Данные для отображения.
-
Cake\View\Form\ContextInterface$context - Текущий контекст формы.
Возвращает
строкаСгенерированный выпадающий список.
Выбрасывает
RuntimeExceptionКогда данные параметров неверны.
Реализация
Cake\View\Widget\WidgetInterface::render() secureFields()source public
secureFields( array $data )
Возвращает список полей, которые необходимо защитить для данного виджета.
Когда выпадающий список часов находится в 24-часовом режиме (null или format=24), выпадающий список периода будет опущен.
Параметры
- массив
$data - Данные для отображения.
Возвращает
массивМассив полей для защиты.
Реализация
Cake\View\Widget\WidgetInterface::secureFields() Подробное описание свойств
$_selectssource
protected массив
Список элементов ввода, которые могут быть отображены
[
'year',
'month',
'day',
'hour',
'minute',
'second',
'meridian',
]
© 2005–2018 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.
https://api.cakephp.org/3.5/class-Cake.View.Widget.DateTimeWidget.html