当前位置: 首页>>代码示例>>PHP>>正文


PHP RSSFeed::returnItems方法代码示例

本文整理汇总了PHP中RSSFeed::returnItems方法的典型用法代码示例。如果您正苦于以下问题:PHP RSSFeed::returnItems方法的具体用法?PHP RSSFeed::returnItems怎么用?PHP RSSFeed::returnItems使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RSSFeed的用法示例。


在下文中一共展示了RSSFeed::returnItems方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: import_feed

		public function import_feed($url, $type_id, $target, $source = false) {
			$typeObj = umiObjectsCollection::getInstance()->getObject($type_id);
			$typeName = $typeObj->getName();

			$feed = new RSSFeed($url);

			$feed->loadContent();

			switch($typeName) {
				case "RSS": {
					$feed->loadRSS();
					break;
				}

				case "ATOM": {
					$feed->loadAtom();
					break;
				}

				default: {
					return false;
				}
			}

			$relations = umiImportRelations::getInstance();

			$source_id = $relations->getSourceId($url);
			if($source_id === false) {
				$source_id = $relations->addNewSource($url);
			}

			$hierarchy_type = umiHierarchyTypesCollection::getInstance()->getTypeByName("news", "item");
			$hierarchy_type_id = $hierarchy_type->getId();

			$result = $feed->returnItems();

			foreach($result as $item) {
				$item_title = $item->getTitle();
				$item_url = $item->getUrl();

				if($relations->getNewIdRelation($source_id, $item_url)) {
					continue;
				}

				$item_content = $item->getContent();
				$item_date = $item->getDate();
				$item_date = strtotime($item_date);
				if(!isset($element_id) || $element_id === false) {
					if(!isset($target[0])) {
						continue;
					}
					$parents = umiHierarchy::getInstance()->getObjectInstances($target[0]);
					if(count($parents)) {
						list($parent_id) = $parents;
						$element_id = umiHierarchy::getInstance()->addElement($parent_id, $hierarchy_type_id, $item_title, $item_title);
						$relations->setIdRelation($source_id, $item_url, $element_id);

						permissionsCollection::getInstance()->setDefaultPermissions($element_id);
					} else {
						return false;
					}
				}

				if ($element = umiHierarchy::getInstance()->getElement($element_id, true)) {
					$element->getObject()->setName($item_title);
					$element->setAltName($item_title);
					$element->setIsActive(true);
					$element->setValue("title", $item_title);
					$element->setValue("h1", $item_title);
					$element->setValue("publish_time", $item_date);
					$element->setValue("anons", $item_content);
					$element->setValue("content", $item_content);
					$element->setValue("source", $source);
					$element->setValue("source_url", $item_url);
					$element->commit();
					$element_id = false;
				}
			}

			return true;
		}
开发者ID:BGCX261,项目名称:zimmerli-svn-to-git,代码行数:81,代码来源:__rss_import.php


注:本文中的RSSFeed::returnItems方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。