2012-09-19 66 views

回答

18

從文檔:

的baseUrl:

返回應用程序的相對URL。這與 scriptUrl類似,只是它沒有腳本文件名,並且 結尾斜槓被剝離。

雖然,homeUrl

主頁URL

試着在你的應用程序相呼應的地方自行檢查每個:

echo Yii::app()->getBaseUrl(true);// true tells to get a relative url, false the other way 
echo Yii::app()->getHomeUrl(); 

如何使用每?

baseUrl就像@ bcmcfc表示可以用作應用程序中所有鏈接的基礎。

現在想象一下,你想鏈接到的圖像中web_root/myapp/img/例如,如果你這樣做,使用絕對路徑e.g <img src="C:/wwww/myapp/img/somepic.jpg>比方說,你完成了所有的發展,現在要部署一些linux服務器!

你可以看到,所有的鏈接將被打破:(但相反,如果你做的事:<img src= <?php Yii::app()->baseUrl() ?> . "/img/somepic.jpg"一切都應該工作正常:)

homeUrl簡直是爲你的應用程序的登錄頁面。嗯,我沒有使用這之前,但我想你可以設置diffirent homeurls根據用戶登錄後的作用,例如!

1

一個是您的應用中鏈接的基本URL。另一個是家庭網址。家庭URL將基於基本URL和將是一個特定的路線或者頁面,例如,在登錄後重定向到

28
Yii::app()->getBaseUrl(true); // => http://localhost/yii_projects 
Yii::app()->getHomeUrl();  // => /yii_projects/index.php 
Yii::app()->getBaseUrl(false); // => /yii_projects 

這是指向圖像等的目錄或文件本身,而不是硬編碼可用於簡潔改名」

+1

+1路徑的最佳實踐。 –

相關問題