API16

API16:JRouter/getInstance

From Joomla! Documentation

Description

Returns the global JRouter object, only creating it if it doesn't already exist.



Syntax

static getInstance($client, $options=array())
Parameter Name Default Value Description
$client The name of the client
$options array() An associative array of options

Returns

A router object. 

Defined in

libraries/joomla/application/router.php

Importing

jimport( 'joomla.application.router' );

Source Body

public static function getInstance($client, $options = array())
{
        static $instances;

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

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

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

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

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

        return $instances[$client];
}



Examples

Code Examples