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

📄 atom.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
字号:
<?php/** * @version		$Id: atom.php 11687 2009-03-11 17:49:23Z ian $ * @package		Joomla.Framework * @subpackage	Document * @copyright	Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved. * @license		GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * See COPYRIGHT.php for copyright notices and details. */// Check to ensure this file is within the rest of the frameworkdefined('JPATH_BASE') or die();/** * JDocumentRenderer_Atom is a feed that implements the atom specification * * Please note that just by using this class you won't automatically * produce valid atom files. For example, you have to specify either an editor * for the feed or an author for every single feed item. * * @package 	Joomla.Framework * @subpackage	Document * @see http://www.atomenabled.org/developers/syndication/atom-format-spec.php * @since	1.5 */ class JDocumentRendererAtom extends JDocumentRenderer {	/**	 * Document mime type	 *	 * @var		string	 * @access	private	 */	 var $_mime = "application/atom+xml";	/**	 * Render the feed	 *	 * @access public	 * @return string	 */	function render()	{		$now	=& JFactory::getDate();		$data	=& $this->_doc;				$uri =& JFactory::getURI();		$url = $uri->toString(array('scheme', 'user', 'pass', 'host', 'port'));		$syndicationURL =& JRoute::_('&format=feed&type=atom');		$feed = "<feed xmlns=\"http://www.w3.org/2005/Atom\" ";		if ($data->language!="") {			$feed.= " xml:lang=\"".$data->language."\"";		}		$feed.= ">\n";		$feed.= "	<title type=\"text\">".htmlspecialchars($data->title, ENT_COMPAT, 'UTF-8')."</title>\n";		$feed.= "	<subtitle type=\"text\">".htmlspecialchars($data->description, ENT_COMPAT, 'UTF-8')."</subtitle>\n";		$feed.= "	<link rel=\"alternate\" type=\"text/html\" href=\"".$url."\"/>\n";		$feed.= "	<id>".str_replace(' ','%20',$data->getBase())."</id>\n";		$feed.= "	<updated>".htmlspecialchars($now->toISO8601(), ENT_COMPAT, 'UTF-8')."</updated>\n";		if ($data->editor!="") {			$feed.= "	<author>\n";			$feed.= "		<name>".$data->editor."</name>\n";			if ($data->editorEmail!="") {				$feed.= "		<email>".htmlspecialchars($data->editorEmail, ENT_COMPAT, 'UTF-8')."</email>\n";			}			$feed.= "	</author>\n";		}		$feed.= "	<generator uri=\"http://joomla.org\" version=\"1.5\">".$data->getGenerator()."</generator>\n";		$feed.= '<link rel="self" type="application/atom+xml" href="'.str_replace(' ','%20',$url.$syndicationURL). "\" />\n";		for ($i=0;$i<count($data->items);$i++)		{			$feed.= "	<entry>\n";			$feed.= "		<title>".htmlspecialchars(strip_tags($data->items[$i]->title), ENT_COMPAT, 'UTF-8')."</title>\n";			$feed.= '		<link rel="alternate" type="text/html" href="'.$url.$data->items[$i]->link."\"/>\n";			if ($data->items[$i]->date=="") {				$data->items[$i]->date = $now->toUnix();			}			$itemDate =& JFactory::getDate($data->items[$i]->date);			$feed.= "		<published>".htmlspecialchars($itemDate->toISO8601(), ENT_COMPAT, 'UTF-8')."</published>\n";			$feed.= "		<updated>".htmlspecialchars($itemDate->toISO8601(),ENT_COMPAT, 'UTF-8')."</updated>\n";			$feed.= "		<id>".str_replace(' ', '%20', $url.$data->items[$i]->link)."</id>\n";			if ($data->items[$i]->author!="")			{				$feed.= "		<author>\n";				$feed.= "			<name>".htmlspecialchars($data->items[$i]->author, ENT_COMPAT, 'UTF-8')."</name>\n";				if ($data->items[$i]->authorEmail!="") {					$feed.= "		<email>".htmlspecialchars($data->items[$i]->authorEmail, ENT_COMPAT, 'UTF-8')."</email>\n";				}				$feed.= "		</author>\n";			}			if ($data->items[$i]->description!="") {				$feed.= "		<summary type=\"html\">".htmlspecialchars($data->items[$i]->description, ENT_COMPAT, 'UTF-8')."</summary>\n";				$feed.= "		<content type=\"html\">".htmlspecialchars($data->items[$i]->description, ENT_COMPAT, 'UTF-8')."</content>\n";			}			if ($data->items[$i]->enclosure != NULL) {			$feed.="		<link rel=\"enclosure\" href=\"". $data->items[$i]->enclosure->url ."\" type=\"". $data->items[$i]->enclosure->type."\"  length=\"". $data->items[$i]->enclosure->length . "\" />\n";			}			$feed.= "	</entry>\n";		}		$feed.= "</feed>\n";		return $feed;	}}

⌨️ 快捷键说明

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