Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

simple xml add namespaced child

I'm using SimpleXML to create an RSS feed for Google Products and I want to create a namespaced child but when I do for example

$item->addChild('g:id', 'myid');

it adds

<id>myid</id>

instead of

<g:id></g:id>

Besides I have added at the top

<rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">

How can I add namespaced children?

like image 360
Ilian Andreev Avatar asked Jul 24 '11 17:07

Ilian Andreev


Video Answer


2 Answers

The namespace is the third parameter to addChild()

$item->addChild('id', 'myid', 'http://base.google.com/ns/1.0');

See the documentation for more information.

like image 93
Michael Berkowski Avatar answered Oct 24 '22 12:10

Michael Berkowski


Without knowing if this is an official way of doing this, I found something that did the job:

$item->addChild('g:g:id', 'myid');

Found this on this code http://www.sanwebe.com/2013/08/creating-rss-feed-using-php-simplexml

like image 20
Antony Gibbs Avatar answered Oct 24 '22 11:10

Antony Gibbs