php专区

 首页 > php专区 > PHP应用 > php类库 > php 完美的rss 生成类 - php类库

php 完美的rss 生成类 - php类库

分享到:
【字体:
导读:
          ?phpclassrssGenerator_rss{var$rss_version=#39;2.0#39;;var$encoding=#39;#39;;var$stylesheet=#39;#39;;functioncData($str){ret......

php 完美的rss 生成类

  1. class rssGenerator_rss 
  2.     var $rss_version = '2.0'
  3.     var $encoding = ''
  4.     var $stylesheet = ''
  5.  
  6.     function cData($str
  7.     { 
  8.         return ' . $str . ' ]]>'
  9.     } 
  10.  
  11.     function createFeed($channel
  12.     { 
  13.         $selfUrl = (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on' ? 'http://' : 'https教程://'); 
  14.         $selfUrl .= $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; 
  15.         $rss = '
  16.         if (!emptyempty($this->encoding)) { 
  17.             $rss .= ' encoding="' . $this->encoding . '"'
  18.         } 
  19.         $rss .= '?>' . " "
  20.         if (!emptyempty($this->stylesheet)) { 
  21.             $rss .= $this->stylesheet . " "
  22.         } 
  23.         $rss .= '' . " "
  24.         $rss .= ' . $this->rss_version . '" xmlns:atom="http://www.w3.org/2005/Atom">' . " "
  25.         $rss .= '  ' . " "
  26.      $rss .= '     . ($channel->atomLinkHref ? $channel->atomLinkHref : $selfUrl) . '" rel="self" type="application/rss+xml" />' . " "
  27.         $rss .= '    '</span><span> . </span><span class="vars">$channel</span><span>->title . </span><span class="string">'' . " "
  28.         $rss .= '    ' . $channel->link . '' . " "
  29.         $rss .= '    ' . $channel->description . '' . " "
  30.         if (!emptyempty($channel->language)) { 
  31.             $rss .= '    ' . $channel->language . '' . " "
  32.         } 
  33.         if (!emptyempty($channel->copyright)) { 
  34.             $rss .= '    ' . $channel->copyright . '' . " "
  35.         } 
  36.         if (!emptyempty($channel->managingEditor)) { 
  37.             $rss .= '    ' . $channel->managingEditor . '' . " "
  38.         } 
  39.         if (!emptyempty($channel->webMaster)) { 
  40.             $rss .= '    ' . $channel->webMaster . '' . " "
  41.         } 
  42.         if (!emptyempty($channel->pubDate)) { 
  43.             $rss .= '    ' . $channel->pubDate . '' . " "
  44.         } 
  45.         if (!emptyempty($channel->lastBuildDate)) { 
  46.             $rss .= '    ' . $channel->lastBuildDate . '' . " "
  47.         } 
  48.         foreach ($channel->categories as $category) { 
  49.             $rss .= '    
  50.             if (!emptyempty($category['domain'])) { 
  51.                 $rss .= ' domain="' . $category['domain'] . '"'
  52.             } 
  53.             $rss .= '>' . $category['name'] . '' . " "
  54.         } 
  55.         if (!emptyempty($channel->generator)) { 
  56.             $rss .= '    ' . $channel->generator . '' . " "
  57.         } 
  58.         if (!emptyempty($channel->docs)) { 
  59.             $rss .= '    ' . $channel->docs . '' . " "
  60.         } 
  61.         if (!emptyempty($channel->ttl)) { 
  62.             $rss .= '    ' . $channel->ttl . '' . " "
  63.         } 
  64.         if (sizeof($channel->skipHours)) { 
  65.             $rss .= '    ' . " "
  66.             foreach ($channel->skipHours as $hour) { 
  67.                 $rss .= '      ' . $hour . '' . " "
  68.             } 
  69.             $rss .= '    ' . " "
  70.         } 
  71.         if (sizeof($channel->skipDays)) { 
  72.             $rss .= '    ' . " "
  73.             foreach ($channel->skipDays as $day) { 
  74.                 $rss .= '      ' . $day . '' . " "
  75.             } 
  76.             $rss .= '    ' . " "
  77.         } 
  78.         if (!emptyempty($channel->image)) { 
  79.             $image = $channel->image; 
  80.             $rss .= '    ' . " "
  81.             $rss .= '      ' . $image->url . '' . " "
  82.             $rss .= '      '</span><span> . </span><span class="vars">$image</span><span>->title . </span><span class="string">'' . " "
  83.             $rss .= '      ' . $image->link . '' . " "
  84.             if ($image->width) { 
  85.                 $rss .= '      ' . $image->width . '' . " "
  86.             } 
  87.             if ($image->height) { 
  88.                 $rss .= '      ' . $image->height . '' . " "
  89.             } 
  90.             if (!emptyempty($image->description)) { 
  91.                 $rss .= '      ' . $image->description . '' . " "
  92.             } 
  93.             $rss .= '    ' . " "
  94.         } 
  95.         if (!emptyempty($channel->textInput)) { 
  96.             $textInput = $channel->textInput; 
  97.             $rss .= '    ' . " "
  98.             $rss .= '      '</span><span> . </span><span class="vars">$textInput</span><span>->title . </span><span class="string">'' . " "
  99.             $rss .= '      ' . $textInput->description . '' . " "
  100.             $rss .= '      ' . $textInput->name . '' . " "
  101.             $rss .= '      ' . $textInput->link . '' . " "
  102.             $rss .= '    ' . " "
  103.         } 
  104.         if (!emptyempty($channel->cloud_domain) || !emptyempty($channel->cloud_path) || !emptyempty($channel->cloud_registerProcedure) || !emptyempty($channel->cloud_protocol)) { 
  105.             $rss .= '     . $channel->cloud_domain . '" '
  106.             $rss .= 'port="' . $channel->cloud_port . '" path="' . $channel->cloud_path . '" '
  107.             $rss .= 'registerProcedure="' . $channel->cloud_registerProcedure . '" '
  108.             $rss .= 'protocol="' . $channel->cloud_protocol . '" />' . " "
  109.         } 
  110.         if (!emptyempty($channel->extraXML)) { 
  111.             $rss .= $channel->extraXML . " "
  112.         } 
  113.         foreach ($channel->items as $item) { 
  114.             $rss .= '    ' . " "
  115.             if (!emptyempty($item->title)) { 
  116.                 $rss .= '      '</span><span> . </span><span class="vars">$item</span><span>->title . </span><span class="string">'' . " "
  117.             } 
  118.             if (!emptyempty($item->description)) { 
  119.                 $rss .= '      ' . $item->description . '' . " "
  120.             } 
  121.             if (!emptyempty($item->link)) { 
  122.                 $rss .= '      ' . $item->link . '' . " "
  123.             } 
  124.             if (!emptyempty($item->pubDate)) { 
  125.                 $rss .= '      ' . $item->pubDate . '' . " "
  126.             } 
  127.             if (!emptyempty($item->author)) { 
  128.                 $rss .= '      ' . $item->author . '' . " "
  129.             } 
  130.             if (!emptyempty($item->comments)) { 
  131.                 $rss .= '      ' . $item->comments . '' . " "
  132.             } 
  133.             if (!emptyempty($item->guid)) { 
  134.                 $rss .= '      
  135.                 $rss .= ($item->guid_isPermaLink ? 'true' : 'false') . '">'
  136.                 $rss .= $item->guid . '' . " "
  137.             } 
  138.             if (!emptyempty($item->source)) { 
  139.                 $rss .= '       . $item->source_url . '">'
  140.                 $rss .= $item->source . '' . " "
  141.             } 
  142.             if (!emptyempty($item->enclosure_url) || !emptyempty($item->enclosure_type)) { 
  143.                 $rss .= '       . $item->enclosure_url . '" '
  144.                 $rss .= 'length="' . $item->enclosure_length . '" '
  145.                 $rss .= 'type="' . $item->enclosure_type . '" />' . " "
  146.             } 
  147.             foreach ($item->categories as $category) { 
  148.                 $rss .= '      
  149.                 if (!emptyempty($category['domain'])) { 
  150.                     $rss .= ' domain="' . $category['domain'] . '"'
  151.                 } 
  152.                 $rss .= '>' . $category['name'] . '' . " "
  153.             } 
  154.             $rss .= '    ' . " "
  155.         } 
  156.         $rss .= '  ' . " "
  157.         return $rss .= ''
  158.     } 
  159.  
  160.  
  161. class rssGenerator_channel 
  162.     var $atomLinkHref = ''
  163.     var $title = ''
  164.     var $link = ''
  165.     var $description = ''
  166.     var $language = ''
  167.     var $copyright = ''
  168.     var $managingEditor = ''
  169.     var $webMaster = ''
  170.     var $pubDate = ''
  171.     var $lastBuildDate = ''
  172.     var $categories = array(); 
  173.     var $generator = ''
  174.     var $docs = ''
  175.     var $ttl = ''
  176.     var $image = ''
  177.     var $textInput = ''
  178.     var $skipHours = array(); 
  179.     var $skipDays = array(); 
  180.     var $cloud_domain = ''
  181.     var $cloud_port = '80'
  182.     var $cloud_path = ''
  183.     var $cloud_registerProcedure = ''
  184.     var $cloud_protocol = ''
  185.     var $items = array(); 
  186.     var $extraXML = ''
  187.  
  188.  
  189. class rssGenerator_image 
  190.     var $url = ''
  191.     var $title = ''
  192.     var $link = ''
  193.     var $width = '88'
  194.     var $height = '31'
  195.     var $description = ''
  196.  
  197.  
  198. class rssGenerator_textInput 
  199.     var $title = ''
  200.     var $description = ''
  201.     var $name = ''
  202.     var $link = ''
  203.  
  204.  
  205. class rssGenerator_item 
  206.     var $title = ''
  207.     var $description = ''
  208.     var $link = ''
  209.     var $author = ''
  210.     var $pubDate = ''
  211.     var $comments = ''
  212.     var $guid = ''
  213.     var $guid_isPermaLink = true; 
  214.     var $source = ''
  215.     var $source_url = ''
  216.     var $enclosure_url = ''
  217.     var $enclosure_length = '0'
  218.     var $enclosure_type = ''
  219.     var $categories = array(); 
  220.  
  221. //开源代码phpfensi.com 
  222. ?> 

php使用实例如下:

  1. require_once 'rss_generator.inc.php'
  2. $rss_channel = new rssGenerator_channel(); 
  3. $rss_channel->atomLinkHref = ''
  4. $rss_channel->title = 'My News'
  5. $rss_channel->link = 'http://phpfensi.com/news.php'
  6. $rss_channel->description = 'The latest news about web-development.'
  7. $rss_channel->language = 'en-us'
  8. $rss_channel->generator = 'PHP RSS Feed Generator'
  9. $rss_channel->managingEditor = 'editor@mysite.com (Alex Jefferson)'
  10. $rss_channel->webMaster = 'webmaster@mysite.com (Vagharshak Tozalakyan)'
  11.  
  12. $item = new rssGenerator_item(); 
  13. $item->title = 'New website launched'
  14. $item->description = 'Today I finaly launch a new website.'
  15. $item->link = 'http://phpfensi.com'
  16. $item->guid = 'http://phpfensi.com'
  17. $item->pubDate = 'Tue, 07 Mar 2006 00:00:01 GMT'
  18. $rss_channel->items[] = $item
  19.  
  20. $item = new rssGenerator_item(); 
  21. $item->title = 'Another website launched'
  22. $item->description = 'Just another website launched.'
  23. $item->link = 'http://phpfensi.com'
  24. $item->guid = 'http://phpfensi.com'
  25. $item->pubDate = 'Wed, 08 Mar 2006 00:00:01 GMT'
  26. $rss_channel->items[] = $item
  27.  
  28. $rss_feed = new rssGenerator_rss(); 
  29. $rss_feed->encoding = 'UTF-8'
  30. $rss_feed->version = '2.0'
  31. header('Content-Type: text/xml'); 
  32. echo $rss_feed->createFeed($rss_channel); 
  33. ?> 
分享到:
PHP RSS 生成类 - php类库
PHP RSS 生成类 同时也可以用网页来解析xml文档,PHP RSS 生成类实例代码如下:
php 3des加密解密类程序代码 - php类库
php 3des加密解密类程序代码 php 3des加密解密是一个在数据传输中常用的一个简单的加密方式了,下面我整理了一个php 3des加密解密类程序有需要了解的朋友可进入参考. 3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称,它相当于是对每个数据块应...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……