diff --git a/class.php b/class.php new file mode 100644 index 0000000..bc626c9 --- /dev/null +++ b/class.php @@ -0,0 +1,55 @@ + + +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); +} +?> \ No newline at end of file diff --git a/getLastNews.php b/getLastNews.php new file mode 100644 index 0000000..3969dcf --- /dev/null +++ b/getLastNews.php @@ -0,0 +1,32 @@ + +$rss = "https://lenta.ru/rss"; + +$xmlstr = @file_get_contents($rss); +if($xmlstr===false)die('Error connect to RSS: '.$rss); +$xml = new SimpleXMLElement($xmlstr); +if($xml===false)die('Error parse RSS: '.$rss); + +$xml = @simplexml_load_file( $rss); +if($xml===false)die('Error parse RSS: '.$rss); + +foreach($xml->xpath('//item') as $item){ + $i++; + if ($i>5) break; + echo " +