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

GetList

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

CDBResult
CPath::GetList(
	int parent_id = "",
	string counter_type = "COUNTER_FULL_PATH",
	string &by = "s_counter",
	string &order = "desc",
	array filter = array(),
	bool &is_filtered
)

Возвращает данные из таблицы, хранящей статистическую информацию как по полным путям, так и по отрезкам путей в разрезе по дням.

Параметры метода

ПараметрОписание
parent_idID "родительского" отрезка пути (предшествовавшему текущему).
counter_typeТип счетчика, возможные значения:
  • COUNTER_FULL_PATH - количество переходов по полному пути;
  • COUNTER - количество переходов по отрезку пути.
byПоле для сортировки. Возможные значения:
  • s_counter - значение счетчика тип которого задается в counter_type;
  • s_last_page - последняя страница отрезка пути (используется только если counter_type=COUNTER);
  • s_pages - набор всех страниц полного пути (используется только если counter_type=COUNTER_FULL_PATH).
оrderПорядок сортировки. Возможные значения:
  • asc - по возрастанию;
  • desc - по убыванию.
filterМассив для фильтрации результирующего списка. В массиве допустимы следующие ключи:
  • PATH_ID* - ID отрезка пути;
  • PATH_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по PATH_ID будет искаться вхождение;
  • DATE1 - начальное значение для интервала даты;
  • DATE2 - конечное значение для интервала даты;
  • FIRST_PAGE* - первая страница пути;
  • FIRST_PAGE_EXACT_MATCH - если значение равно "Y", то при фильтрации по FIRST_PAGE будет искаться точное совпадение;
  • FIRST_PAGE_SITE_ID - ID сайта первой страницы пути;
  • FIRST_PAGE_SITE_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по FIRST_PAGE_SITE_ID будет искаться вхождение;
  • FIRST_PAGE_404 - была ли 404 ошибка на первой странице пути, возможные значения:
    • Y - была;
    • N - не была.
  • LAST_PAGE* - последняя страница пути;
  • LAST_PAGE_EXACT_MATCH - если значение равно "Y", то при фильтрации по LAST_PAGE будет искаться точное совпадение;
  • LAST_PAGE_SITE_ID* - ID сайта последней страницы пути;
  • LAST_PAGE_SITE_ID_EXACT_MATCH - если значение равно "N", то при фильтрации по LAST_PAGE_SITE_ID будет искаться вхождение;
  • LAST_PAGE_404 - была ли 404 ошибка на последней странице пути, возможные значения:
    • Y - была;
    • N - не была.
  • PAGE* - произвольная страница пути
  • PAGE_EXACT_MATCH - если значение равно "N", то при фильтрации по PAGE будет искаться вхождение
  • PAGE_SITE_ID - ID сайта произвольной страницы пути
  • PAGE_404 - была ли 404 ошибка на произвольной странице пути, возможные значения:
    • Y - была
    • N - не была.
  • ADV* - ID рекламной кампании, по посетителям которой надо получить данные;
  • ADV_EXACT_MATCH - если значение равно "N", то при фильтрации по ADV будет искаться вхождение;
  • ADV_DATA_TYPE - флаг типа данных для рекламной кампании, возможные значения:
    • P - только по прямым заходам по рекламной кампании;
    • B - только по возвратам по рекламной кампании;
    • S - сумма по прямым заходам и возвратам.
  • STEPS1 - начальное значение интервала для поля "количество страниц в пути";
  • STEPS2 - конечное значение интервала для поля "количество страниц в пути".
* - допускается сложная логика
is_filteredФлаг отфильтрованности списка записей. Если значение равно "true", то список был отфильтрован.

Структура возвращаемой записи

В зависимости от типа счетчика (counter_type), структура возвращаемой записи различная.

  • если counter_type = COUNTER:
    Array(
    	[PATH_ID] => ID отрезка пути
    	[LAST_PAGE] => последняя страница отрезка пути
    	[LAST_PAGE_404] => [Y|N] флаг 404 ошибки  на последней странице пути
    	[LAST_PAGE_SITE_ID] => ID сайта последней страницы пути
    	[COUNTER] => количество переходов по отрезку пути
    )
  • если counter_type = COUNTER_FULL_PATH:
    Array(
    	[PATH_ID] => ID пути
    	[PAGES] => набор страниц входящих в полный путь
    	[COUNTER] => количество переходов по полному пути
    )

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

<?
// выберем данные по полным путям пройденных посетителями
// рекламной кампании #1 или #2
$arFilter = array(
	"ADV" => "1 | 2"
);

// получим список записей
$rs = CPath::GetList(
	"",
	"COUNTER_FULL_PATH",
	($by = "s_counter"), 
	($order = "desc"), 
	$arFilter, 
	$is_filtered
);

// выведем все записи
while ($ar = $rs->Fetch())
{
	echo "<pre>"; print_r($ar); echo "</pre>";    
}
?>


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