API15

JApplication/getInstance

From Joomla! Documentation

< API15:JApplication

The "API15" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Description[edit]

Returns a reference to the global JApplication object, only creating it if it doesn't already exist.


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

Syntax[edit]

& getInstance($client, $config=array(), $prefix= 'J')
Parameter Name Default Value Description
$client $id A client identifier or name.
$config array() $config An optional associative array of configuration settings.
$prefix 'J'

Returns[edit]

The appliction object. 

Defined in[edit]

libraries/joomla/application/application.php

Importing[edit]

jimport( 'joomla.application.application' );

Source Body[edit]

function &getInstance($client, $config = array(), $prefix = 'J')
{
        static $instances;

        if (!isset( $instances )) {
                $instances = array();
        }

        if (empty($instances[$client]))
        {
                //Load the router object
                jimport('joomla.application.helper');
                $info =& JApplicationHelper::getClientInfo($client, true);

                $path = $info->path.DS.'includes'.DS.'application.php';
                if(file_exists($path))
                {
                        require_once $path;

                        // Create a JRouter object
                        $classname = $prefix.ucfirst($client);
                        $instance = new $classname($config);
                }
                else
                {
                        $error = JError::raiseError(500, 'Unable to load application: '.$client);
                        return $error;
                }

                $instances[$client] =& $instance;
        }

        return $instances[$client];
}


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

Examples[edit]

Code Examples[edit]