Creates an HTML link (`<a />`) or a document meta-link (`<link />`).
If `$url` starts with `"http://"` or `"https://"`, this is treated as an external link. Otherwise, it is treated as a path to controller/action and parsed using the `Router::match()` method (where `Router` is the routing class dependency specified by the rendering context, i.e. `lithium\template\view\Renderer::$_classes`). If `$url` is empty, `$title` is used in its place.

Parameters

  • string $title The content to be wrapped by an `<a />` tag.
  • mixed $url Can be a string representing a URL relative to the base of your Lithium application, an external URL (starts with `'http://'` or `'https://'`), an anchor name starting with `'#'` (i.e. `'#top'`), or an array defining a set of request parameters that should be matched against a route in `Router`.
  • array $options Array of HTML s and other options.

Returns

string Returns an `<a />` or `<link />` element.

Source

						public function link($title, $url = null, array $options = array()) {
		$defaults = array('escape' => true, 'type' => null);
		list($scope, $options) = $this->_options($defaults, $options);

		if (isset($scope['type']) && $type = $scope['type']) {
			$options += compact('title');
			return $this->_metaLink($type, $url, $options);
		}

		$url = is_null($url) ? $title : $url;
		return $this->_render(__METHOD__, 'link', compact('title', 'url', 'options'), $scope);
	}