Actions

API15

JRegistry/loadXML

From Joomla! Documentation

< API15:JRegistry
Replacement filing cabinet.png
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.

Contents

Description

Load an XML string into the registry into the given namespace [or default if a namespace is not given]

[<! removed edit link to red link >]

<! removed transcluded page call, red link never existed >

Syntax

loadXML($data, $namespace=null)
Parameter Name Default Value Description
$data $data XML formatted string to load into the registry
$namespace null $namespace Namespace to load the XML string into [optional]

Returns

boolean True on success

Defined in

libraries/joomla/registry/registry.php

Importing

jimport( 'joomla.registry.registry' );

Source Body

function loadXML($data, $namespace = null)
{
        // Load a string into the given namespace [or default namespace if not given]
        $handler =& JRegistryFormat::getInstance('XML');
 
        // If namespace is not set, get the default namespace
        if ($namespace == null) {
                $namespace = $this->_defaultNameSpace;
        }
 
        if (!isset($this->_registry[$namespace])) {
                // If namespace does not exist, make it and load the data
                $this->makeNameSpace($namespace);
                $this->_registry[$namespace]['data'] =& $handler->stringToObject($data);
        } else {
                // Get the data in object format
                $ns =& $handler->stringToObject($data);
 
                /*
                 * We want to leave groups that are already in the namespace and add the
                 * groups loaded into the namespace.  This overwrites any existing group
                 * with the same name
                 */
                foreach (get_object_vars($ns) as $k => $v) {
                        $this->_registry[$namespace]['data']->$k = $v;
                }
        }
 
        return true;
}

[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >

Examples

<CodeExamplesForm />