XML parser

Hi all,
        Can anyone help me about this how do I parse a xml file using php?  for example i need a attribute named "USER" in the xml file.  How do I get this value from an xml and use it in an php file?

Thanks alot to all
!!
KaiwapAsked:
Who is Participating?
 
hernst42Connect With a Mentor Commented:
Have a look at this example:

<?php

$data = '<?xml version = "1.0" encoding="Windows-874" ?>
<tag>
     <user>user</user>
     <password>pwd</password>
                <filename>picture.jpg</filename>
     <content>albkja;dlkjoasdihfashdf;kj;eifjo;eijf</content>
     <user>user</user>
     <password>pwd</password>
                <filename>picture2.jpg</filename>
     <content>albkja;dlkjoasdihfassdfdshdf;kj;eifjo;eijf</content>
</tag>
';

$xml_parser = xml_parser_create();
xml_parse_into_struct($xml_parser, $data, $vals, $index);
xml_parser_free($xml_parser);
$result = array();
foreach($index['FILENAME'] as $num => $id) {
    $result[] = array(
        'filename' => $vals[$id]['value'],
        'content'  => $vals[$index['CONTENT'][$num]]['value'],
        );
}

// for debugging/understanding the structures:
var_dump($vals);
var_dump($index);
var_dump($result);

$result will contain:
Array
(
    [0] => Array
        (
            [filename] => picture.jpg
            [content] => albkja;dlkjoasdihfashdf;kj;eifjo;eijf
        )

    [1] => Array
        (
            [filename] => picture2.jpg
            [content] => albkja;dlkjoasdihfassdfdshdf;kj;eifjo;eijf
        )

)

This will only work correctly if you have the same count of fielname and contents tag and if the are in the same xml-level.
0
 
hernst42Commented:
See: http://www.php.net/manual/en/function.xml-parse-into-struct.php
In the comments there are a lot of examples how to do this or how to get a strcuture wich can be searched /accessed easyer
0
 
KaiwapAuthor Commented:
I am sorry but i m not very good in this script.
for example i have
<?xml version = "1.0" encoding="Windows-874" ?>

      <user>user</user>
      <password>pwd</password>
                <filename>picture.jpg</filename>
      <content>albkja;dlkjoasdihfashdf;kj;eifjo;eijf</content>

if i only want the values in the filename and contents and show it on the other page
Can you give me a sample of how it is done?  
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.