PHP Classes
Icontem

File: Abs_Xml_Rss/AbsRssReader20/how_to/how_to_AbsRssReader20.txt


  Search   All class groups All class groups   Latest entries Latest entries   Top 10 charts Top 10 charts   Newsletter Newsletter   Blog Blog   Forums Forums   Help FAQ Help FAQ  
  Login   Register  
Recommend this page to a friend! ReTweet ReTweet Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Costin T  >  Abs_Xml_Rss  >  Abs_Xml_Rss/AbsRssReader20/how_to/how_to_AbsRssReader20.txt  
File: Abs_Xml_Rss/AbsRssReader20/how_to/how_to_AbsRssReader20.txt
Role: Documentation
Content type: text/plain
Description: How to use this class
Class: Abs_Xml_Rss
Read and write RSS and Atom feeds
 

Contents

Class file image Download
This file describes the usage of the following class:
	* AbsRssReader20


* class AbsRssReader20
	This class can be used to read an RSS 2.0 xml feed document.


* Protected Properties
	* $_doc
	* $_loaded


* Public Methods
	* Load( $filePath )
	* GetChannelTags()
	* GetItems( $maxLimit = 0 )
	* GetAll()



* final public function Load( $filePath )
	Loads the specified xml feed and assigns the content to the $_doc variable.
	It can reside either locally or remotely. You should cache it if your blog doesn't get updated more than once per day.

* Example:

<?php
	include_once "class.AbsRssReader20.php";

	$xml = new AbsRssReader20();

	$xml->Load('xml/rss_2.xml');	// feed stored on your host
	$xml->Load('http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml');	// feed located on other host
?>


* final public function GetChannelTags()
	This function selects from the $_doc variable the channel tags and returns the result as an associated array.

* Example:

<?php
	# No cache headers
	header("Expires: Mon, 05 June 2001 05:06:07 GMT");
  	header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
    header('Cache-Control: pre-check=0, post-check=0, max-age=0');
	header("Cache-Control: no-cache, must-revalidate");
	header("Pragma: no-cache");

	include_once "class.AbsRssReader20.php";

	$xml = new AbsRssReader20();
	$xml->Load('xml/rss_2.xml');

	// Get Channel Tags
	$chTags = $xml->GetChannelTags();
	if (is_array($chTags) and count($chTags)>0)
	{
		echo '<pre>';
		echo '<strong>Get Channel Tags</strong><hr size="1" />';
		print_r($chTags);
		echo '</pre>';
	}
?>


Running the code above, the result should be the following array:
<?php
Array
(
    [title] => Post 3
    [link] => http://blog-url-here/post.php?pid=9
    [description] => Posts's short description goes here
    [pubDate] => Sun, 10 Apr 2009 02:01:52 GMT
    [generator] => Blog Name Here
    [language] => en-us
    [dc:publisher] => Costin Trifan
    [copyright] => Copyright (c) 2008 Costin Trifan. All rights reserved. blah blah..
    [slash:comments] => 200
    [comments] => http://blog-name-here/post.php?pid=9#comments
    [category] => SOFTWARE
)
?>


* final public function GetItems( $maxLimit = 0 )
	This function selects from the $_doc variable all the entries found in the <item> tags and returns them as an associated array unless a max limit is specified.

* Example:

<?php
	# No cache headers
	header("Expires: Mon, 05 June 2001 05:06:07 GMT");
  	header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
    header('Cache-Control: pre-check=0, post-check=0, max-age=0');
	header("Cache-Control: no-cache, must-revalidate");
	header("Pragma: no-cache");

	include_once "class.AbsRssReader20.php";

	$xml = new AbsRssReader20();
	$xml->Load('xml/rss_2.xml');

	// Get Items
	$chItems = $xml->GetItems();
	if (is_array($chItems) and count($chItems)>0)
	{
		echo '<pre>';
		echo '<strong>Get Items</strong><hr size="1" />';
		print_r($chItems);
		echo '</pre>';
	}
?>

will output something like this:

<?php
Array
(
    [item_0] => Array
        (
            [title] => Post 1
            [link] => http://blog-url-here/post.php?pid=11
            [description] => Posts's short description goes here
            [slash:comments] => 40
            [comments] => http://blog-name-here/post.php?pid=11#comments
            [pubDate] => Sun, 12 Apr 2009 02:01:52 GMT
            [category] => PHP
        )

    [item_1] => Array
        (
            [title] => Post 2
            [link] => http://blog-url-here/post.php?pid=10
            [description] => Posts's short description goes here
            [slash:comments] => 120
            [comments] => http://blog-name-here/post.php?pid=10#comments
            [pubDate] => Sun, 11 Apr 2009 02:01:52 GMT
            [category] => WEB
        )

    [item_2] => Array
        (
            [title] => Post 3
            [link] => http://blog-url-here/post.php?pid=9
            [description] => Posts's short description goes here
            [slash:comments] => 200
            [comments] => http://blog-name-here/post.php?pid=9#comments
            [pubDate] => Sun, 10 Apr 2009 02:01:52 GMT
            [category] => SOFTWARE
        )
)
?>

 To retrieve only a limit number of results you should specify that number, like this:
<?php
	// Get only the first 2 entries
	$entries = $xml->GetItems( 2 );
?>


* final public function GetAll()
	This function selects everything from the $_doc variable and returns the result as an associated array.

* Example:

<?php
	# No cache headers
	header("Expires: Mon, 05 June 2001 05:06:07 GMT");
  	header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
    header('Cache-Control: pre-check=0, post-check=0, max-age=0');
	header("Cache-Control: no-cache, must-revalidate");
	header("Pragma: no-cache");

	include_once "class.AbsRssReader20.php";

	$xml = new AbsRssReader20();
	$xml->Load('xml/rss_2.xml');

	// Get ALL
	$all = $xml->GetAll();
	if (is_array($all) and count($all)>0)
	{
		echo '<pre>';
		echo '<strong>Get ALL</strong><hr size="1" />';
		print_r($all);
		echo '</pre>';
	}
?>

will output something like this:

<?php
Array
(
    [title] => Post 3
    [link] => http://blog-url-here/post.php?pid=9
    [description] => Posts's short description goes here
    [pubDate] => Sun, 10 Apr 2009 02:01:52 GMT
    [generator] => Blog Name Here
    [language] => en-us
    [dc:publisher] => Costin Trifan
    [copyright] => Copyright (c) 2008 Costin Trifan. All rights reserved. blah blah..
    [slash:comments] => 200
    [comments] => http://blog-name-here/post.php?pid=9#comments
    [category] => SOFTWARE
    [item_0] => Array
        (
            [title] => Post 1
            [link] => http://blog-url-here/post.php?pid=11
            [description] => Posts's short description goes here
            [slash:comments] => 40
            [comments] => http://blog-name-here/post.php?pid=11#comments
            [pubDate] => Sun, 12 Apr 2009 02:01:52 GMT
            [category] => PHP
        )

    [item_1] => Array
        (
            [title] => Post 2
            [link] => http://blog-url-here/post.php?pid=10
            [description] => Posts's short description goes here
            [slash:comments] => 120
            [comments] => http://blog-name-here/post.php?pid=10#comments
            [pubDate] => Sun, 11 Apr 2009 02:01:52 GMT
            [category] => WEB
        )

    [item_2] => Array
        (
            [title] => Post 3
            [link] => http://blog-url-here/post.php?pid=9
            [description] => Posts's short description goes here
            [slash:comments] => 200
            [comments] => http://blog-name-here/post.php?pid=9#comments
            [pubDate] => Sun, 10 Apr 2009 02:01:52 GMT
            [category] => SOFTWARE
        )
)
?>

 
  Advertise on this site Advertise on this site   Site map Site map   Statistics Statistics   Site tips Site tips   Privacy policy Privacy policy   Contact Contact  

For more information send a message to :
info at phpclasses dot org.
Copyright (c) Icontem 1999-2009 PHP Classes - PHP Class Scripts
  PHP Book Reviews - Reviews of books and other products