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

GetListEx

Описание и параметры

CDBResult
CForumMessage::GetListEx(
	array arOrder = Array("ID"=>"ASC"),
	array arFilter = Array(),
	bool bCount  = false,
	int iNum = 0,
	array arAddParams = Array()
);

Возвращает список сообщений (включая связанные данные) по фильтру arFilter, отсортированный в соответствии с arOrder. Метод статический.

Параметры функции

ПараметрОписаниеC версии
arOrder Массив для сортировки результата. Массив вида array("поле сортировки"=>"направление сортировки" [, ...]).
Поле для сортировки может принимать значения:
  • AUTHOR_NAME - имя автора сообщения;
  • POST_DATE - дата создания сообщения;
  • FORUM_ID - ID форума;
  • TOPIC_ID - ID темы;
  • ID - ID сообщения;
  • USE_SMILES - разрешено заменять смайлики на их графические изображения;
  • NEW_TOPIC - новая тема;
  • APPROVED - опубликовано;
  • POST_DATE - дата создания сообщения;
  • POST_MESSAGE - сообщение;
  • ATTACH_IMG - присоединенная картинка;
  • PARAM1 - первый параметр элемента;
  • PARAM2 - второй параметр элемента;
  • AUTHOR_ID - ID автора сообщения;
  • AUTHOR_EMAIL - e-mail автора сообщения;
  • AUTHOR_IP - IP-адрес автора сообщения;
  • AUTHOR_REAL_IP - реальный IP-адрес автора сообщения;
  • GUEST_ID - ID посетителя;
  • EDITOR_ID - ID того, кто отредактировал сообщение;
  • EDITOR_NAME - имя того, кто отредактировал сообщение;
  • EDITOR_EMAIL - e-mail того, кто отредактировал сообщение;
  • EDIT_REASON - причина редактирования сообщения;
  • EDIT_DATE - дата редактирования сообщения;
Направление сортировки может принимать значения:
  • ASC - по возрастанию;
  • DESC - по убыванию;
Необязательный. По умолчанию равен Array("ID"=>"ASC")
arFilter Массив вида array("фильтруемое поле"=>"значение фильтра" [, ...]). Фильтруемое поле может принимать значения:
  • ID - ID сообщения;
  • AUTHOR_NAME - имя автора сообщения;
  • AUTHOR_ID - ID автора сообщения;
  • FORUM_ID - ID форума;
  • TOPIC_ID - ID темы;
  • APPROVED - опубликовано;
  • PARAM1 - первый параметр элемента;
  • PARAM2 - второй параметр элемента;
  • APPROVED - опубликовано;
  • NEW_TOPIC - новая тема;
  • POST_MESSAGE - сообщение;
  • ATTACH_IMG - присоединенная картинка;
  • POST_DATE - дата создания сообщения;
  • USER_ID - ID пользователя;
  • NEW_MESSAGE - новое сообщение;
  • USER_GROUP - группа пользователя;
  • TOPIC_SOCNET_GROUP_ID - ID группы соцсети;
  • TOPIC_OWNER_ID - ID владельца темы;
  • TOPIC - тема;
  • TOPIC_TITLE - название темы;
  • TITLE - название сообщения;
Перед названием фильтруемого поля может быть указан тип фильтрации:
  • "!" - не равно
  • "<" - меньше
  • "<=" - меньше либо равно
  • ">" - больше
  • ">=" - больше либо равно
Необязательное. По умолчанию записи не фильтруются.
bCount Если параметр равен True, то возвращается только количество сообщений, которое соответствует установленному фильтру. Необязательный. По умолчанию равен False.
iNum Ограничение числа возвращаемых записей. Если параметр iNum отличен от нуля, то возвращается не более iNum записей. Поддерживается не для всех баз данных. Если параметр не поддерживается, то его установки игнорируются. Необязательный. По умолчанию равен 0.
arAddParams Массив параметров. 4.0.3

Возвращаемое значение

Возвращается объект CDBResult

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

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

<?
// выберем все опубликованные сообщения темы с кодом $TID в порядке, обратном поступлению

$db_res = CForumMessage::GetListEx(array("ID"=>"DESC"), array("TOPIC_ID"=>$TID));
while ($ar_res = $db_res->Fetch())
{
	echo "<pre>";
	print_r($ar_res);
	echo "</pre><br>";
}
?>
<?
// Для выборки сообщений из нескольких топиков можно использовать код:

cmodule::includemodule('forum');

$res = CForumMessage::GetListEx(array("POST_DATE"=>"DESC"), array('@TOPIC_ID'=>array(6,7)), false, 2);
while($arMessages = $res->Fetch())
{
	echo "<pre>";
	print_r($arMessages["POST_MESSAGE"]);
	echo "</pre>";
}
?>


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