yii框架中homeUrl和baseUrl有什么区别?

rag*_*hul 23 php yii

是什么区别homeUrl的baseUrl在Yii框架?

Ein*_*zer 28

Yii::app()->getBaseUrl(true);   // => http://localhost/yii_projects
Yii::app()->getHomeUrl();       // => /yii_projects/index.php
Yii::app()->getBaseUrl(false);  // => /yii_projects
Run Code Online (Sandbox Code Playgroud)

这是指向图像等目录或文件本身的最佳实践,而不是硬编码可以更改名称的路径"


Nim*_*mir 18

来自文档:

的baseUrl:

返回应用程序的相对URL.这类似于scriptUrl,除了它没有脚本文件名,并且末尾斜杠被剥离.

虽然,homeUrl

主页网址

尝试在应用程序的某处回显,自己检查每个:

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

如何使用每个?

的baseUrl是@bcmcfc说可以为您的应用程序的所有链接的基础是有用的.

现在想象你想链接到一个图像,web_root/myapp/img/例如,如果你使用绝对路径,例如,<img src="C:/wwww/myapp/img/somepic.jpg>让我们说你完成了所有的开发,现在你想部署到一些linux服务器!

你可以看到你的所有链接都将被破坏:(但如果相反你做了:<img src= <?php Yii::app()->baseUrl() ?> . "/img/somepic.jpg"一切都应该工作正常:)

homeUrl只是您应用的登录页面.好吧,我之前没有使用过这个,但我想你可以根据用户角色登录后设置不同的homeurls,例如!!