Apart from the read access, it is also possible to build complete XML documents from the ground up using PHP's DOM support. This might look a bit clumsy; however, it works very well when you have to automatically parse a lot of data. When using PHP 4, the create_element() method creates a new element. You can set its content with set_content() and attributes with set_attribute(). Finally, you access the root element of the XML file with document_element() and then call append_child(). Finally, dump_mem() returns the whole XML file as a string so that you can save it to the hard diskor you can use dump_file() to let PHP do the saving. However, note that dump_file() uses an absolute path, so you might be better off with PHP's own file-handling functions. Creating XML with DOM (dom-write4.php; excerpt)<?php require_once 'stripFormSlashes.inc.php'; $dom = domxml_open_mem(file_get_contents ('quotes.xml')); $quote = $dom->create_element('quote'); $quote->set_attribute('year', $_POST['year']); $phrase = $dom->create_element('phrase'); $phrase->set_content($_POST['quote']); $author = $dom->create_element('author'); $author->set_content($_POST['author']); $quote->append_child($phrase); $quote->append_child($author); $root = $dom->document_element(); $root->append_child($quote); file_put_contents('quotes.xml', $dom->dump_mem()); echo 'Quote saved.'; ?> The preceding code saves author, quote, and year in an XML document, appending to the data already there. |