Heim >Backend-Entwicklung >PHP-Tutorial >yii的方法createUrl生成路径问题

yii的方法createUrl生成路径问题

WBOY
WBOYOriginal
2016-06-23 13:54:471174Durchsuche

发现用 $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;	}

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn