class ArrayToXML
{
/**
* The main function for converting to an XML document.
* Pass in a multi dimensional array and this recrusively loops through and builds up an XML document.
*
* @param array $data
* @param string $rootNodeName - what you want the root node to be - defaultsto data.
* @param SimpleXMLElement $xml - should only be used recursively
* @return string XML
*/
public static function toXml($data, $rootNodeName = 'data', $xml=null)
{
// turn off compatibility mode as simple xml throws a wobbly if you don't.
if (ini_get('zend.ze1_compatibility_mode') == 1)
{
ini_set ('zend.ze1_compatibility_mode', 0);
}
if ($xml == null)
{
$xml = simplexml_load_string("<?xml version='1.0' encoding='utf-8'?><$rootNodeName />");
}
// loop through the data passed in.
foreach($data as $key => $value)
{
// no numeric keys in our xml please!
if (is_numeric($key))
{
// make string key...
$key = "unknownNode_". (string) $key;
}
// replace anything not alpha numeric
$key = preg_replace('/[^a-z]/i', '', $key);
// if there is another array found recrusively call this function
if (is_array($value))
{
$node = $xml->addChild($key);
// recrusive call.
ArrayToXML::toXml($value, $rootNodeName, $node);
}
else
{
// add single node.
$value = htmlentities($value);
$xml->addChild($key,$value);
}
}
// pass back as string. or simple xml object if you want!
return $xml->asXML();
}
}
分享到:
相关推荐
php把数组转换成XML格式
这个"一个将数组转换为xml简单的PHP类"的主题提供了一个方便的解决方案,使得开发者无需深入理解XML底层的DOM或SAX处理就能实现这种转换。下面我们将详细探讨这个PHP类的工作原理、如何使用它以及相关的XML概念。 ...
然后实例化了`A2Xml`类,并调用`toXml`方法将`$res`数组转换成XML格式的字符串输出。 除了实现转换的方法和示例代码外,文章还提供了几个在线工具的链接,这些工具可以用于在线进行XML和JSON格式数据的互相转换、...
$stp = '<item><title>PHP数组生成Xml格式数据.</title><link>http://www.111cn.net</link><data>2008-02-28</data></item>'; // 循环生成多个 <item> 元素 for ($i = 1; $i ; $i++) { $stp .= $stp; } $foot = '...
在这个场景中,我们将探讨如何使用PHP将二维数组转换为XML内容。 首先,我们需要理解二维数组的基本概念。在PHP中,二维数组是一个数组,其中的每个元素也是一个数组,形如: ```php $array = array( array('key1...
将数组转换为xml此程序包提供了一个非常简单的类,可将数组转换为xml字符串。 安装您可以通过composer安装此软件包。 作曲家需要spatie / array-to-xml美国将数组转换为xml此包提供了一个非常简单的类,可以将数组...
xml 数据格式转换成php数组,php数组转成xml格式数据
这两种方法都可以有效地将PHP数组转换为XML格式。选择哪种方法取决于具体的需求,比如是否需要更多的XML控制、性能考虑,或者是对PHP版本的兼容性要求。`SimpleXMLElement`方法通常更简洁,而DOMDocument方法提供了...
php将对象转成数组,php将xml转成数组 一个自定义函数搞定纯原创。
在PHP编程中,将数组转换成XML是一种常见的数据格式转换需求,特别是在处理网站的结构化数据,如Sitemap时。本篇文章将详细分析如何利用PHP实现数组到XML的转换,并提供一个具体的案例来阐述实现方法及操作注意事项...
2. **PHP到XML的转换**:另一个关键功能可能是`array_to_xml()`, 这个方法将PHP数组转换成XML字符串。它可能首先创建一个DOMDocument对象,然后递归地将数组元素添加为DOMElement节点,最后输出XML字符串。这样,PHP...
总的来说,Array2xml类提供了一个简单的方法,将PHP数组转换为XML字符串,方便在不同系统间进行数据交换。然而,对于大型项目或复杂的数据转换,建议使用更为强大且灵活的XML处理库,以确保数据的完整性和一致性。
递归实现PHP数组转XML的知识点主要涉及以下几个方面: 1. 数组转XML的场景理解:在PHP编程中,经常需要将数组数据格式化为XML格式,以便于与其他使用XML格式作为数据交换标准的系统进行通信。特别是在Web服务或者...
然而,有时我们可能需要将XML数据转化为更易于操作的PHP数组,以便进行进一步的处理。本文将详细介绍如何在PHP中实现XML到数组的转换,并提供相关知识点。 首先,PHP提供了内置的`DOMDocument`类和`DOMXpath`类,...
`APSArrayToXML.class.php`是一个PHP类,其主要功能是将PHP数组转换成XML字符串或者XML对象,便于进行数据序列化和反序列化操作。 这个类的使用可以极大地简化从PHP数组到XML的转换过程。通常,手动编写XML字符串会...
将数组转换为xml 该程序包提供了一个非常简单的类,可以将数组转换为xml字符串。支持我们 我们投入了大量资源来创建。 您可以通过来支持我们。 非常感谢您从家乡寄给我们一张明信片,其中提及您使用的是哪个包装。 ...
xmlparse.php为封装好的xml与php数组相互转换的函数: XML->PHP: parse_xml_config(); PHP->XML: dump_xml_config(); #将转换好的XML放入文件: file_put_contents_safe().
把XML数据转换成php数组形式。
总结,PHP处理XML并以数组返回的核心步骤包括加载XML文件、使用XPath查询、转换为PHP数组以及处理嵌套结构。通过这些技术,你可以方便地在PHP项目中集成XML数据,无论是简单的数据检索还是复杂的转换和处理。在实际...