array( array( "name" => "apple", "color" => "red", "price" => "1..."/>

php数组怎么转为xml?

23次阅读
没有评论

将PHP数组转换为XML可以使用PHP的内置函数`SimpleXMLElement()`。以下是完整的示例代码:

$data = array(
    "fruit" => array(
        array(
            "name" => "apple",
            "color" => "red",
            "price" => "1.50"
        ),
        array(
            "name" => "banana",
            "color" => "yellow",
            "price" => "0.50"
        ),
        array(
            "name" => "orange",
            "color" => "orange",
            "price" => "1.00"
        )
    )
);

// 将数组转换为 XML
$xml = new SimpleXMLElement('');

function array_to_xml($data, &$xml) {
    foreach($data as $key => $value) {
        if(is_array($value)) {
            if(!is_numeric($key)){
                $subnode = $xml->addChild("$key");
                array_to_xml($value, $subnode);
            } else{
                array_to_xml($value, $xml);
            }
        } else {
            $xml->addChild("$key",htmlspecialchars("$value"));
        }
    }
}

array_to_xml($data, $xml);

// 输出 XML
header('Content-Type: text/xml');
echo $xml->asXML();

这个示例将一个包含水果信息的PHP数组转换为XML,并将其输出。在转换过程中,我们使用了自定义的`array_to_xml()`函数来循环遍历数组并将其转换为XML元素。最后,使用`header()`函数将Content-Type设置为text/xml,将XML字符串输出。

正文完
 
评论(没有评论)