Base::alias PHP Method

alias() public method

Assemble url from alias name
public alias ( $name, $params = [], $query = NULL ) : string
$name string
$params array|string
$query string|array
return string
    function alias($name, $params = [], $query = NULL)
    {
        if (!is_array($params)) {
            $params = $this->parse($params);
        }
        if (empty($this->hive['ALIASES'][$name])) {
            user_error(sprintf(self::E_Named, $name), E_USER_ERROR);
        }
        $url = $this->build($this->hive['ALIASES'][$name], $params);
        if (is_array($query)) {
            $query = http_build_query($query);
        }
        return $url . ($query ? '?' . $query : '');
    }

Usage Example

Example #1
0
 /**
  * Assemble url from alias name
  * @param string $name
  * @param array $params
  * @param string $lang
  * @return string|FALSE
  */
 function alias($name, $params = NULL, $lang = NULL)
 {
     if (in_array($name, $this->global_aliases)) {
         return $this->f3->alias($name, $params);
     }
     $params = $params ? $this->f3->parse($params) : array();
     if (!$lang) {
         $lang = $this->current;
     }
     if (isset($this->rules[$lang][$name]) && $this->rules[$lang][$name] === FALSE) {
         return FALSE;
     }
     $url = isset($this->rules[$lang][$name]) ? $this->rules[$lang][$name] : @$this->_aliases[$name];
     if (!$url) {
         user_error(sprintf(\Base::E_Named, $name), E_USER_ERROR);
     }
     return $this->f3->build(rtrim('/' . $lang . $url, '/'), $params);
 }