Класс 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 - Конец диапазона чисел для генерации
- массив
$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–present 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.6/class-Cake.View.Widget.DateTimeWidget.html