Вход Регистрация
Файл: inc/write_rss.php
Строк: 38
<?php

function print_rss($url_rss,$file_rss,$hclock,$kol_print_news)
  {
    
//$url_rss - URL-адрес RSS потока 
    //$file_rss - адрес файла для хранения RSS-новостей
    //$hclock - время обновления, в часах
    //$kol_print_news - количество выводимых новостей
    
    
    
    
if (!file_exists($file_rss) || ( filemtime($file_rss) + $hclock*60*60 time() ) )//если файл не сохраняли, то сохраняем на локальном сервере или если существует, то проверяем устарел ли файл (не более ли Х часов назад он был записан)
      
{
       if (@!
copy ($url_rss,$file_rss))
         return (
false);
       
       
$text_rss=file($file_rss);
       
$text_rss=implode("",$text_rss);
       
//преобразуем кодировку данных
       //если не нужно конвертировать кодировку, то комментируем ниже идущее условие или редактируем
       
if (preg_match('/<?xml[^>]+encoding[s]*=[s]*("|')windows-1251("|')[^>]+?>/i', $text_rss))
         {
          
          
$text_rss = iconv("cp1251", "utf-8", $text_rss);
          file_put_contents(
$file_rss$text_rss);//пишем данные обратно в файл
          
         }
      }
    
    
    
$text_rss=file($file_rss);
    
$text_rss=implode("",$text_rss);
    
    
$url_image = "";
    
$image_is=preg_match("#<image>(.*?)</image>#is",$text_rss,$image_m);
    
if ( $image_is )
      {
       
       
$image_url_is preg_match("#<url>(.*?)</url>#is",$image_m[0],$image_t);
       
       if ( 
$image_url_is )
         
$url_image $image_t[1];
      }
    
    
$mas_item=array();
    
preg_match_all("#<item>.*?</item>#is",$text_rss,$mas_item);
    
    
$one_item=array();
    
$t="";
    
    
$t.=( $url_image "<div><img src='".$url_image."'  ></div>" :"");
    
    
$kol=0;
    if (
sizeof($mas_item)>0)
      {
       
       foreach (
$mas_item[0] as $one_item)
         {
          
          
$date "";
          
$kol++;
          
$t_is=preg_match("#<title>(.*?)</title>#is",$one_item,$title);
          
$l_is=preg_match("#<link>(.*?)</link>#is",$one_item,$link);
          
$d_is=preg_match("#<description>(.*?)</description>#is",$one_item,$description);
          
          
$date_is=preg_match("#<pubDate>(.*?)</pubDate>#is",$one_item,$date_t);
          
          if (
$t_is && $l_is)
            {
             
$title[1]=preg_replace("#<![CDATA[(.*?)]]>#eis","'\1'",$title[1]);
             
$link[1]=preg_replace("#<![CDATA[(.*?)]]>#eis","'\1'",$link[1]);
             
$description[1]=preg_replace("#<![CDATA[(.*?)]]>#eis","'\1'",$description[1]);
             
             if ( 
$date_is )
               
$date strtotime($date_t[1]);
             
             
             
$t.="<div><a href='".$link[1]."' target='_blank'>".$title[1]."</a> 
              <br>"
              
.$description[1]
              .( 
$date "<br>".date("d.n.Y",$date) : "" )
              .
"</div>";
             
            }
          if (
$kol >= $kol_print_news) break;
         }
      }

    echo (
$t);

    
    return (
true);
  }
Онлайн: 0
Реклама