lithium\net\http\Router::attach()

public static method

Attach a scope to a mount point.

Example 1:

Router::attach('app', array(
    'absolute' => true,
    'host' => 'localhost',
    'scheme' => 'http://',
    'prefix' => 'web/tests'
));

Example 2:

Router::attach('app', array(
    'absolute' => true,
    'host' => '{:subdomain:[a-z]+}.{:hostname}.{:tld}',
    'scheme' => '{:scheme:https://}',
    'prefix' => ''
));

Attach the variables to populate for the app scope.

Router::attach('app', null, array(
    'subdomain' => 'www',
    'hostname' => 'li3',
    'tld' => 'me'
));

Parameters

  • string Name

    of the scope.

  • mixed Settings

    of the mount point or null for setting only variables to populate.

  • array Variables

    to populate for the scope.

Source

	public static function attach($name, $config = null, array $vars = array()) {
		if ($name === false) {
			return null;
		}

		if (!isset(static::$_scopes)) {
			static::_initScopes();
		}

		if ($config === null) {
			if ($vars && ($config = static::$_scopes->get($name))) {
				$config['values'] = $vars;
				static::$_scopes->set($name, $config);
			}
			return;
		}

		if (is_array($config) || $config === false) {
			static::$_scopes->set($name, $config);
		}
	}