首頁 >後端開發 >php教程 >yii的方法createUrl生成路径问题

yii的方法createUrl生成路径问题

WBOY
WBOY原創
2016-06-23 13:54:471177瀏覽

发现用 $this->createUrl('index/archives')  后成的路径是相对的这种 。  不是  www.xxxx.com/ 绝对的这种。请问一下有什么方法让 createUrl生成绝对的吗?我在网上找了好久都没有找到方法


回复讨论(解决方案)

使用 createAbsoluteUrl()就可以了。
$route = 'index/archives';  
$params=array();  
$url=$this->createAbsoluteUrl($route,$params); 

http://www.yiiframework.com/doc/api/1.1/CController#createAbsoluteUrl-detail

https://github.com/yiisoft/yii/blob/1.1.14/framework/web/CController.php#L980

/**	 * Creates an absolute URL for the specified action defined in this controller.	 * @param string $route the URL route. This should be in the format of 'ControllerID/ActionID'.	 * If the ControllerPath is not present, the current controller ID will be prefixed to the route.	 * If the route is empty, it is assumed to be the current action.	 * @param array $params additional GET parameters (name=>value). Both the name and value will be URL-encoded.	 * @param string $schema schema to use (e.g. http, https). If empty, the schema used for the current request will be used.	 * @param string $ampersand the token separating name-value pairs in the URL.	 * @return string the constructed URL	 */	public function createAbsoluteUrl($route,$params=array(),$schema='',$ampersand='&')	{		$url=$this->createUrl($route,$params,$ampersand);		if(strpos($url,'http')===0)			return $url;		else			return Yii::app()->getRequest()->getHostInfo($schema).$url;	}

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn