实现类似thinkphp的url生成
/**
 * [to 生成相对于根路径的URL:]
 * @param  [String] $info [地址字符串,例如:Home/Index/index]
 * @param  [Array] 	$arr  [后面带有的参数字符串]
 * @return [type]       [description]
 */
public static function to($info,$arr=NULL){
	if(isset($_SERVER['PATH_INFO'])){//pathinfo 模式
		$url = $_SERVER['SCRIPT_NAME'].'/'.$info."?";
		echo $url."<br>";
		if(isset($_SERVER['REDIRECT_URL'])){//pathinfo rewrite模式
			$url = dirname($_SERVER['SCRIPT_NAME']).'/'.$info."?";
			echo $url."<br>";
		}
	}else{//普通模式
		$url_arr = explode('/',$info);
		$url = $_SERVER['SCRIPT_NAME']."?m=".$url_arr['0'].'&c='.$url_arr['1'].'&a='.$url_arr['2']."&";
	}

	if(is_array($arr) && sizeof($arr)>0){
		$url_end = http_build_query($arr);
		$url .= $url_end;
	}
	return $url;
	
}


助手函数:

function url($info,$arr=NULL){
	return Url::to($info,$arr);
}


修改时间 2016-08-28

真诚赞赏,手留余香
赞赏
随机推荐
Apache、PHP 配置 open_basedir,以及性能问题
PS 插画风格手绘仙人掌
Authorization Schemes 认证模式
php图片压缩
MySQL备份与恢复,mysqldump命令导入导出数据库
在网页中调用VLC插件
Android工程中添加图片资源
重构:互联网公司的政治斗争和大清洗
ThinkPHP中,跳转方法在try..catch中使用注意
windows中Git的换行符为 CRLF