ホームページ >バックエンド開発 >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 までご連絡ください。