public static function alias( $alias, $params = array(), $retain = false )
	{
		$route_params = array();
		
		// to handle the suffix after a slash in an alias define
		$suffix = '';
		
		if ( strpos( $alias, '/' ) !== false && $alias !== '/' )
		{
			// slashes in aliases get appended as suffix
			list( $alias, $suffix ) = explode( '/', $alias );
			
			$suffix = '/'.$suffix;
		}
	

		// get the parameters with the numeric keys so we can 
		// pass them as route parameters like [any]-[num]-[num]/[any]/
		foreach( $params as $key => $value )
		{
			if ( is_int( $key ) )
			{
				$route_params[] = $value; unset( $params[$key] );
			}
		}

		return CCUrl::to( CCRouter::alias( $alias, $route_params ).$suffix, $params, $retain );
	}
public static function alias( $alias, $params = array(), $retain = false )
	{
		$route_params = array();
		
		// to handle the suffix after a slash in an alias define
		$suffix = '';
		
		if ( strpos( $alias, '/' ) !== false && $alias !== '/' )
		{
			// slashes in aliases get appended as suffix
			list( $alias, $suffix ) = explode( '/', $alias );
			
			$suffix = '/'.$suffix;
		}
	

		// get the parameters with the numeric keys so we can 
		// pass them as route parameters like [any]-[num]-[num]/[any]/
		foreach( $params as $key => $value )
		{
			if ( is_int( $key ) )
			{
				$route_params[] = $value; unset( $params[$key] );
			}
		}

		return CCUrl::to( CCRouter::alias( $alias, $route_params ).$suffix, $params, $retain );
	}
public static function alias ( $ alias , $ params = array ( ) , $ retain = false ) { $ route_params = array ( ) ; // to handle the suffix after a slash in an alias define $ suffix = '' ; if ( strpos ( $ alias , '/' ) !== false && $ alias !== '/' ) { // slashes in aliases get appended as suffix list ( $ alias , $ suffix ) = explode ( '/' , $ alias ) ; $ suffix = '/' . $ suffix ; } // get the parameters with the numeric keys so we can  // pass them as route parameters like [any]-[num]-[num]/[any]/ foreach ( $ params as $ key => $ value ) { if ( is_int ( $ key ) ) { $ route_params [ ] = $ value ; unset ( $ params [ $ key ] ) ; } } return CCUrl :: to ( CCRouter :: alias ( $ alias , $ route_params ) . $ suffix , $ params , $ retain ) ; }
Create an URL based on an router alias

@param string		$alias
@param array  	$params
@param bool		$retain		Should we keep the get parameters?
@return string
Create an URL based on an router alias