将字符串解析为PHP数组

时间:2013-11-05 19:59:06

标签: php arrays string parsing

我有以下字符串

<DReport>
    <message 
        id="1023012301" 
        sdate="2005/7/19 22:0:0" 
        ddate="2005/7/19 22:0:0"
        status="N" />
</DReport>

如何将此字符串解析为PHP数组

$report = array(
    "id"=>"1023012301",
    "sdate"=>"2005/7/19 22:0:0",
    "ddate"=>"2005/7/19 22:0:0",
    "status"=>"N"
);

2 个答案:

答案 0 :(得分:0)

也许是一种更快捷的方式,但最重要的是:

$x = simplexml_load_string($s);
$a = (array)$x->message->attributes();
$report = $a['@attributes'];
print_r($report);

答案 1 :(得分:0)

这是一种方法,它将内容加载到$ xmlstr值的$ report数组。

$ xmlstr =输入的xml值。

$xml = simplexml_load_string ( $xmlstr );    

$report = array ();
foreach($xml->message[0]->attributes() as $a => $b) {
    $report[$a] = $b;
}