- is_numeric: documentation ( source)
<?php
abstract class tfXmlHelper
{
private function a2x($array, &$xml_obj)
{
foreach ($array as $key => $value) {
if (is_array($value)) {
$key = is_numeric($key) ? "item$key" : $key;
$subnode = $xml_obj->addChild("$key");
self::a2x($value, $subnode);
} else {
$key = is_numeric($key) ? "item$key" : $key;
$xml_obj->addChild("$key", "$value");
}
}
}
public static function xml_encode($array)
{
$xml_obj = new SimpleXMLElement("<root></root>");
self::a2x($array, $xml_obj);
return $xml_obj->asXML();
}
}
class XmlHelper extends tfXmlHelper
{
}
$test_obj = array(
'key' => 'value',
'item' => array(
'stuff',
'more_stuff'
)
);