Преобразование XML в массив

96 0

Для преобразования XML в массив можно использовать следующую функцию:

function xml_to_array($XML)
{
$XML = trim($XML);
$returnVal = $XML;

// Expand empty tags
$emptyTag = '<(.*)/>';
$fullTag = '<\\1></\\1>';
$XML = preg_replace ("|$emptyTag|", $fullTag, $XML);

$matches = array();
if (preg_match_all('|<(.*)>(.*)</\\1>|Ums', trim($XML), $matches))
{
    // Если есть элементы, тогда вернуть массив, иначе текст
    if (count($matches[1]) > 0) $returnVal = array();
    foreach ($matches[1] as $index => $outerXML)
    {
        $attribute = $outerXML;
        $value = xml_to_array($matches[2][$index]);
        if (! isset($returnVal[$attribute])) $returnVal[$attribute] = array();
            $returnVal[$attribute][] = $value;
    }
}
// Bring un-indexed singular arrays to a non-array value.
if (is_array($returnVal)) foreach ($returnVal as $key => $value)
{
    if (is_array($value) && count($value) == 1 && key($value) === 0)
    {
        $returnVal[$key] = $returnVal[$key][0];
    }
}
return $returnVal;
}

скачать dle 11.0фильмы бесплатно
[xfgiven_url] [/xfgiven_url] [xfgiven_vbversion][/xfgiven_vbversion] [xfgiven_modversion][/xfgiven_modversion] [xfgiven_supported][/xfgiven_supported] [xfgiven_dbchanges][/xfgiven_dbchanges] [xfgiven_codechanges][/xfgiven_codechanges] [xfgiven_usesplugins][/xfgiven_usesplugins] [xfgiven_templateedit][/xfgiven_templateedit] [xfgiven_autotemplate][/xfgiven_autotemplate] [xfgiven_addfiles][/xfgiven_addfiles] [xfgiven_translations][/xfgiven_translations]

Дополнительная информация : Extra Info

Источник
Версия Vbulletin:Vbulletin version[xfvalue_vbversion]
Версия модуля:Mod version[xfvalue_modversion]
Поддержка: Supported:[xfvalue_supported]
Изменение БД: DB changes:[xfvalue_dbchanges]
Правка кода: Code changes:[xfvalue_codechanges]
Плагины: Use plugins:[xfvalue_usesplugins]
Правка шаблонов: Template edits:[xfvalue_templateedit]
Автоправка шаблонов: Auto Template:[xfvalue_autotemplate]
Доп.файлы: Add files:[xfvalue_addfiles]
Доп. языки: Translations:[xfvalue_translations]

File engine/modules/userbox.php not found.

Комментариев пока нет, добавьте свой!

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

{mainlink_code_links}
{mainlink_code_ads}
{sape_links}
File engine/modules/ed-shortbar/bar.php not found.