forked from PrideWebDev/developerTest
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclass.php
More file actions
55 lines (38 loc) · 1.38 KB
/
class.php
File metadata and controls
55 lines (38 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");?>
<?php
//Выборка элементов инфоблока через новый класс
class getElements {
var $arResult;
function __construct($arParams) {
$this->arResult = $this->get_elements($arParams);
}
function get_elements($arParams) { print_r($arParams["IBLOCK_ID"]);
$arOrder = $arParams["ORDER"];
$arSelect = $arParams["SELECT"];
$arFilter = $arParams["FILTER"];
$res = CIBlockElement::GetList($arOrder , $arFilter, false, $arParams["LIMIT"], $arSelect);
while($ob = $res->GetNextElement())
{
$arFields[] = $ob->GetFields();
}
return $arFields;
}
}
if(CModule::IncludeModule('iblock')){
$obCache = new CPHPCache();
if($obCache->InitCache(3600, "elements", "/"))// Если кэш валиден
{
$vars = $obCache->GetVars();// Извлечение переменных из кэша
$arResult = $vars["RESULT"];
}
elseif($obCache->StartDataCache())// Если кэш невалиден
{
$ge = new getElements(Array("IBLOCK_ID" => 29, "ORDER" => Array("SORT" => "ASC"), "SELECT" => Array("ID", "NAME"), "LIMIT" => Array("nPageSize"=>50), "FILTER" => Array("IBLOCK_ID"=>$arParams["IBLOCK_ID"], "ACTIVE"=>"Y")));
$arResult = $ge->arResult;
$obCache->EndDataCache(array(
"RESULT" => $arResult
));
}
print_r($arResult);
}
?>