Results 1 to 3 of 3

Thread: PHP and XML

  1. #1
    Join Date
    Feb 2009

    Question PHP and XML

    I am developing a website with users using some XML.

    I would like to know what is the best and must optimized way to read and write XML with PHP. Currently I made some test with " new DOMDocument();" it work well but is it the best way to do it?

    And is it best to read a big XML that contain many info or to split it in many little XML that contain less info, and to read them one after the other?

    And do you have any good tips of PHP optimizations, what not to do or use and what to make to optimize.

    One last question, what happen if a user must update an XML and at the same time an other user must write in the same XML? It will create a conflict, anyone have ideas to solve that problem?

    Thank you
    Last edited by narolis; 02-10-2009 at 05:35 PM.

  2. #2
    Join Date
    Jun 2003
    If you have these questions then I recommend using a database or serialised text file, XML is much less efficient.

    It really depends on the size of the XML file, there is an overhead for each file, but the size of the file is very important, where possible try to load as little as possible.

    simpleXML is not the most efficient method, but it is the most flexable. The most efficient method depends a lot on what you are doing, if you want to add a row, then it is faster to not use a lib, just edit the file with normal text editing functions. If you want to read the whole file and parse it multiple times, then it's better to use a multi-dimensional array and the xml_parse function.

    XML is parsed once, edits once it's parsed will not have an effect, but an edit while it is being read might cause problems. That is why there is such a thing as a file lock, which should be used.
    If you are using PHP please use the [PHP] and [/PHP] forum tags for highlighting...
    The same applies to HTML and the forums [HTML][/HTML] tags.

  3. #3
    Join Date
    Aug 2004
    I would second the motion that the best way to store data that needs to be manipulated by users is via a database. It's going to be more efficient, plus it has the tools built into it for locking, transactions, etc. to avoid things like race conditions between concurrent users. If you need to provide XML output, that can be generated on the fly from the database as easily as HTML output can be generated.
    "Well done....Consciousness to sarcasm in five seconds!" ~ Terry Pratchett, Night Watch

    How to Ask Questions the Smart Way (not affiliated with this site, but well worth reading)

    My Blog
    cwrBlog: simple, no-database PHP blogging framework

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
HTML5 Development Center