如何用php读取数组中的xml文件

时间:2013-10-02 11:13:35

标签: php xml arrays readxml

我需要将xml文件内容读取到php数组

这是我的xml文件:

<users>
  <user>
    <firstname>1</firstname>
    <lastname>2</lastname>
    <username>3</username>
    <password>4</password>
  </user>
  <user>
    <firstname>5</firstname>
    <lastname>6</lastname>
    <username>7</username>
    <password>8</password>
  </user>
</users>

我用这个:

$xml= simplexml_load_file('filename.xml');

reult是:

SimpleXMLElement Object ( [user] => Array ( [0] => SimpleXMLElement Object (       [firstname] => 1 [lastname] => 2 [username] => 3 [password] => 4 ) [1] => SimpleXMLElement Object ( [firstname] => 5 [lastname] => 6 [username] => 7 [password] => 8 ) ) ) 

但我需要一个这样的数组:

$xml[0]['firstname'] -> 1
$xml[0]['lastname'] -> 2 
......

1 个答案:

答案 0 :(得分:0)

对于简单的xml结构,你可以使用类似的东西

$xml = '<users>
  <user>
    <firstname>1</firstname>
    <lastname>2</lastname>
    <username>3</username>
    <password>4</password>
  </user>
  <user>
    <firstname>5</firstname>
    <lastname>6</lastname>
    <username>7</username>
    <password>8</password>
  </user>
</users>';


$input_xml = simplexml_load_string($xml); // load the xml string
$json = json_encode($input_xml); // convert to json object 
$output_array = json_decode($json, TRUE); // decode the json and transform to an array

希望有所帮助