read and edit xml with PHP

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View

Hi all,
Thanks in advance for any help that you can give.  I'm trying to write
some php that will read in some xml and then allow me to modify the tag

and write back out to xml.

In the following example, I want to read in 'text_for_paragraph_1',
then allow it to be viewed, edited, and saved back to the xml...  I
have absolutely no clue even where to start...any help at all would be
more than appreciated!!


<?xml version="1.0" standalone="yes"?>
<module name="GS02" course="Demo">
                <Name><![CDATA[ c0300010 (Ref Num 772) ]]></Name>

                <Description><![CDATA[ &nbsp; ]]></Description>
                        <Text_for_Paragraph_1><![CDATA≠[ Welcome to
lesson 1 of module 2.
&nbsp; In this lesson, you will learn about the emerging trends in the
IT marketplace. ]]></Text_for_Paragraph_1>

Re: read and edit xml with PHP

John Gauger wrote:
Quoted text here. Click to load it

Some possible approaches (visit the PHP manual at
for more details on these functions, etc.):

* preg_match() and preg_replace(). Devise a regular expression that
gives a hit on <Text_for_Paragraph_1>...</Text_for_Paragraph_1>.

* Use an XSLT transform (see the PHP XSLT functions).

* Load the whole script in using the XML DOM functions, and the find
and replace the contents of the relevant element.

* Save the XML file as some sort of template, with something like
in the right place. Then do a preg_replace() on this.

P.S. Are you aware that you don't have to escape *all* character data
with <![CDATA[ ... ]]>? This is only necessary if you want to express
data that would otherwise look like XML.


Re: read and edit xml with PHP

Hi John

There's probably more than one library made for PHP that takes care of
XML reading/writing, one is below. /

Re: read and edit xml with PHP /

seems to be even better.

Site Timeline