Описание и параметры
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_id | ID "родительского" отрезка пути (предшествовавшему текущему). |
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 ошибка на первой странице пути, возможные значения:
- 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 ошибка на последней странице пути, возможные значения:
- PAGE* - произвольная страница пути
- PAGE_EXACT_MATCH - если значение равно "N", то при фильтрации по PAGE будет искаться вхождение
- PAGE_SITE_ID - ID сайта произвольной страницы пути
- PAGE_404 - была ли 404 ошибка на произвольной странице пути, возможные значения:
- 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>";
}
?>