欢迎来到 54818模板网!这是一个yzmcms的模板分享站。

/**(V3.8 新增)(V6.3 更新)
 * URL组装 支持不同URL模式
 * @param string $url URL表达式,格式:'[模块/控制器/方法]'
 * @param string|array $vars 传入的参数,支持字符串和数组
 * @param boolean $domain 是否显示域名,默认根据URL模式自动展示
 * @param string|boolean $suffix 伪静态后缀,默认为true表示获取配置值
 * @return string
 */
function U($url='', $vars='', $domain=null, $suffix=true) {	
	$url = trim($url, '/');
	$arr = explode('/', $url);
	$num = count($arr);

	$string = SITE_PATH;
	if(URL_MODEL == 0){
		$string .= 'index.php?';
		if($num == 3){
			$string .= 'm='.$arr[0].'&c='.$arr[1].'&a='.$arr[2];
		}elseif($num == 2){
			$string .= 'm='.ROUTE_M.'&c='.$arr[0].'&a='.$arr[1];
		}else{
			$string .= 'm='.ROUTE_M.'&c='.ROUTE_C.'&a='.$arr[0];
		}

		if($vars){
			if(is_array($vars)) $vars = http_build_query($vars);
			$string .= '&'.$vars;
		}
	}else{
		if(URL_MODEL == 1) $string .= 'index.php?s=';
		if(URL_MODEL == 4) $string .= 'index.php/';
		
		if($num == 3){
			$string .= $url;
		}elseif($num == 2){
			$string .= ROUTE_M.'/'.$url;
		}else{
			$string .= ROUTE_M.'/'.ROUTE_C.'/'.$url;
		}

		if($vars){
			if(!is_array($vars)) parse_str($vars, $vars);			
            foreach ($vars as $var => $val){
                                $val = str_replace('/', '{YZM_PATH}', $val);
                if(!is_array($val) && trim($val) !== '') $string .= '/'.urlencode($var).'/'.urlencode($val);
            } 
		}
        $string .= $suffix === true ? C('url_html_suffix') : $suffix;		
	}

	$string = $domain===null&&URL_MODEL==3 ? SERVER_PORT.HTTP_HOST.$string : ($domain ? SERVER_PORT.HTTP_HOST.$string : $string);
	
	return $string;
}

    上一篇:D

    下一篇:C

    作者:54818模板网 关注:539 时间:2024-10-19 14:51:36
    相关网站教程