Документация для разработчиков
Темная тема

Дата

Описание

Для фильтрации элементов инфоблока по свойству типа Дата переменная должна содержать значение даты в формате: YYYY-MM-DD HH:MI:SS.

Значения фильтра этого типа обрабатываются по следующим правилам:

ОперацияЗначение Описание
пустая строкаФильтр по полю применяться не будет. Будут выбраны все значения.
false
Если перед полем этого фильтра указано отрицание (символ "!"), то будут выбраны все не пустые значения.
Иначе будут выбраны пустые значения - NULL.
"><" или "!><"должно быть массивом с двумя элементамиБудет выполнена проверка на попадание в диапазон заданный элементами массива значения фильтра. Включительно. Если перед полем этого указано отрицание (символ "!"), то будут выбраны значения не попадающие в диапазон.
"=", "%", "?" или не заданабудет приведено к типу времени БД с помощью функции CharToDateFunction Проверка на точное совпадение значения. Если указано отрицание, то проверка будет выполнена на неравенство.
">", "<", ">=", "<="будет приведено к типу времени БД с помощью функции CharToDateFunction"Больше", "меньше", "больше или равно" и "меньше или равно". Можно использовать "!" для отрицания условия.

Примечание: если значение фильтра массив, то для каждого элемента будут формироваться соответствующие условия, а затем они будут объединены по "ИЛИ". В случае отрицания условия будут объединяться по "И".

Смотрите также

Примеры использования

1

<?
//Все активные элементы это те у которых ACTIVE_FROM не задано или меньше чем сейчас
//при не заданной ACTIVE_TO или ACTIVE_TO больше чем сейчас
$arFilter = array(
	"<=DATE_ACTIVE_FROM" => array(false, ConvertTimeStamp(false, "FULL")),
	">=DATE_ACTIVE_TO"   => array(false, ConvertTimeStamp(false, "FULL")),
);
?>

В примере выше используется ConvertTimeStamp, поэтому дата будет возвращена в формате сайта

2

При фильтрации свойств инфоблока по дате, нужно указывать формат YYYY-MM-DD HH:II, иначе фильтр работать не будет.

$arFilter = array(
	'>=PROPERTY_DATE_TO'  => date( 'Y-m-d H:i:s' ),
	'<=PROPERTY_DATE_TO'  => date( 'Y-m-d H:i:s' )  
);


© «Битрикс», 2001-2024, «1С-Битрикс», 2024