formatOutput = TRUE; $rssElement = $this->createElement( 'rss' ); $rssElement->setAttribute( 'version', '2.0' ); $this->rss = $this->appendChild( $rssElement ); } /** * Adds a new channel to the feed. * * @param void * @return void */ public function addChannel() { $channelElement = $this->createElement( 'channel' ); $this->channel = $this->rss->appendChild( $channelElement ); } /** * Adds a new element to the channel. * * @param string $element Name of the channel element. * @param string $value Value for the given element. * @param array $attr Two-dim array of attributes and their values for the element. (Optional) * @return void */ public function addChannelElement( $element, $value, $attr = array() ) { $element = $this->createElement( $element, $value ); foreach ( $attr as $key => $value ) $element->setAttribute( $key, $value ); $this->channel->appendChild( $element ); } /** * Adds a new element with sub elements to the channel. * * @param string $element Name of the channel element. * @param array Two-dim array of sub elements and their values. * @return void */ public function addChannelElementWithSub( $element, $sub ) { $element = $this->createElement( $element ); foreach ( $sub as $key => $value ) { $subElement = $this->createElement( $key, $value ); $element->appendChild( $subElement ); } $this->channel->appendChild( $element ); } /** * Adds a new channel item. * * @param void * @return void */ public function addItem() { $item = $this->createElement( 'item' ); $this->currentItem = $this->channel->appendChild( $item ); } /** * Adds a new sub element to the recently added channel item. * * @param string $element Name of the sub item element. * @param string $value Value for the given element. * @param array $attr Two-dim array of attributes and their values for the element. (Optional) * @return void */ public function addItemElement( $element, $value, $attr = array() ) { $element = $this->createElement( $element, $value ); foreach ( $attr as $key => $value ) $element->setAttribute( $key, $value ); $this->currentItem->appendChild( $element ); } /** * Prints the XML document created. * * @param void * @return string The created XML document. */ public function __toString() { return $this->saveXML(); } }