⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xml_domit_rss_lite.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
字号:
<?php/*** DOMIT! RSS Lite is a lightweight version of the DOMIT! Lite RSS parser* @package domit-rss* @subpackage domit-rss-lite* @version 0.51* @copyright (C) 2004 John Heinstein. All rights reserved* @license http://www.gnu.org/copyleft/lesser.html LGPL License* @author John Heinstein <johnkarl@nbnet.nb.ca>* @link http://www.engageinteractive.com/domitrss/ DOMIT! RSS Home Page* DOMIT! RSS is Free Software**/if (!defined('DOMIT_RSS_INCLUDE_PATH')) {	define('DOMIT_RSS_INCLUDE_PATH', (dirname(__FILE__) . DIRECTORY_SEPARATOR));}/** current version of DOMIT! RSS Lite */define ('DOMIT_RSS_LITE_VERSION', '0.51');require_once(DOMIT_RSS_INCLUDE_PATH . 'xml_domit_rss_shared.php');/*** The base DOMIT! RSS Lite document class** @package domit-rss* @subpackage domit-rss-lite* @author John Heinstein <johnkarl@nbnet.nb.ca>*/class xml_domit_rss_document_lite extends xml_domit_rss_base_document {	/**	* Constructor	* @param string Path to the rss file	* @param string Directory for cache files	* @param int Expiration time for a cache file	*/	function xml_domit_rss_document_lite($url = '', $cacheDir = './', $cacheTime = 3600) {	    $this->parser = 'DOMIT_RSS_LITE';	    $this->xml_domit_rss_base_document($url, $cacheDir, $cacheTime);	} //xml_domit_rss_document_lite 	/**	* Performs initialization of the RSS document	*/	function _init() {		$total = $this->node->documentElement->childCount;		$itemCounter = 0;		$channelCounter = 0;		for ($i = 0; $i < $total; $i++) {			$currNode =& $this->node->documentElement->childNodes[$i];			$tagName = strtolower($currNode->nodeName);			switch ($tagName) {				case DOMIT_RSS_ELEMENT_ITEM:					$this->domit_rss_items[$itemCounter] = new xml_domit_rss_item_lite($currNode);					$itemCounter++;					break;				case DOMIT_RSS_ELEMENT_CHANNEL:					$this->domit_rss_channels[$channelCounter] = new xml_domit_rss_channel_lite($currNode);					$channelCounter++;					break;                case DOMIT_RSS_ELEMENT_TITLE:                case DOMIT_RSS_ELEMENT_LINK:                case DOMIT_RSS_ELEMENT_DESCRIPTION:                    $this->DOMIT_RSS_indexer[$tagName] = new xml_domit_rss_simpleelement($currNode);                    break;			}		}		if ($itemCounter != 0) {			$this->DOMIT_RSS_indexer[DOMIT_RSS_ARRAY_ITEMS] =& $this->domit_rss_items;		}		if ($channelCounter != 0) {			$this->DOMIT_RSS_indexer[DOMIT_RSS_ARRAY_CHANNELS] =& $this->domit_rss_channels;		}		$this->handleChannelElementsEmbedded();	} //_init	/**	* Returns the current version of DOMIT! RSS	* @return Object The current version of DOMIT! RSS	*/	function getVersion() {		return DOMIT_RSS_LITE_VERSION;	} //getVersion} //xml_domit_rss_document_lite/*** Represents an RSS channel** @package domit-rss* @subpackage domit-rss-lite* @author John Heinstein <johnkarl@nbnet.nb.ca>*/class xml_domit_rss_channel_lite extends xml_domit_rss_elementindexer {	/** @var array A list of references to channel items */	var $domit_rss_items = array();	/**	* Constructor	* @param Object A DOM node containing channel data	*/	function xml_domit_rss_channel_lite(&$channel) {		$this->node =& $channel;		$this->_init();	} //xml_domit_rss_channel_lite	/**	* Performs initialization of the RSS channel element	*/	function _init() {		$total = $this->node->childCount;		$itemCounter = 0;		for ($i = 0; $i < $total; $i++) {			$currNode =& $this->node->childNodes[$i];			$tagName = strtolower($currNode->nodeName);			switch ($tagName) {				case DOMIT_RSS_ELEMENT_ITEM:					$this->domit_rss_items[$itemCounter] = new xml_domit_rss_item_lite($currNode);					$itemCounter++;					break;				case DOMIT_RSS_ELEMENT_TITLE:				case DOMIT_RSS_ELEMENT_LINK:				case DOMIT_RSS_ELEMENT_DESCRIPTION:					$this->DOMIT_RSS_indexer[$tagName] = new xml_domit_rss_simpleelement($currNode);					break;			}		}		if ($itemCounter != 0) {			$this->DOMIT_RSS_indexer[DOMIT_RSS_ARRAY_ITEMS] =& $this->domit_rss_items;		}	} //_init	/**	* Returns the title of the channel	* @return string The title of the channel, or an empty string	*/	function getTitle() {		return $this->getElementText(DOMIT_RSS_ELEMENT_TITLE);	} //getTitle	/**	* Returns the url of the channel	* @return string The url of the channel, or an empty string	*/	function getLink() {		return $this->getElementText(DOMIT_RSS_ELEMENT_LINK);	} //getLink	/**	* Returns a description of the channel	* @return string A description of the channel, or an empty string	*/	function getDescription() {		return $this->getElementText(DOMIT_RSS_ELEMENT_DESCRIPTION);	} //getDescription	/**	* Returns the number of items in the channel	* @return int The number of items in the channel	*/	function getItemCount() {		return count($this->domit_rss_items);	} //getItemCount	/**	* Returns a reference to the item at the specified index	* @param int The index of the requested item	* @return Object A reference to the item at the specified index	*/	function &getItem($index) {		return $this->domit_rss_items[$index];	} //getItem} //xml_domit_rss_channel_lite/*** Represents an RSS item** @package domit-rss* @subpackage domit-rss-lite* @author John Heinstein <johnkarl@nbnet.nb.ca>*/class xml_domit_rss_item_lite extends xml_domit_rss_elementindexer {	/**	* Constructor	* @param Object A DOM node containing item data	*/	function xml_domit_rss_item_lite(&$item) {		$this->node =& $item;		$this->_init();	} //xml_domit_rss_item_lite	/**	* Performs initialization of the item element	*/	function _init(){		$total = $this->node->childCount;		for($i = 0; $i < $total; $i++) {			$currNode =& $this->node->childNodes[$i];			$tagName = strtolower($currNode->nodeName);			switch ($tagName) {				case DOMIT_RSS_ELEMENT_TITLE:				case DOMIT_RSS_ELEMENT_LINK:				case DOMIT_RSS_ELEMENT_DESCRIPTION:					$this->DOMIT_RSS_indexer[$tagName] = new xml_domit_rss_simpleelement($currNode);					break;			}		}	} //init	/**	* Returns the title of the item	* @return string The title of the item, or an empty string	*/	function getTitle() {		return $this->getElementText(DOMIT_RSS_ELEMENT_TITLE);	} //getTitle	/**	* Returns the url of the item	* @return string The url of the item, or an empty string	*/	function getLink() {		return $this->getElementText(DOMIT_RSS_ELEMENT_LINK);	} //getLink	/**	* Returns a description of the item	* @return string A description of the item, or an empty string	*/	function getDescription() {		return $this->getElementText(DOMIT_RSS_ELEMENT_DESCRIPTION);	} //getDescription} //xml_domit_rss_item_lite?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -