我正在做一个小项目,我所有的网址都是没有base_url()
功能的。所以我在想这些base_url()
功能对我的网址有什么帮助。我知道它将根据配置文件首选项为 url 添加前缀。但我只想问
使用它们有什么好处?不使用它们的缺点是什么?
我正在做一个小项目,我所有的网址都是没有base_url()
功能的。所以我在想这些base_url()
功能对我的网址有什么帮助。我知道它将根据配置文件首选项为 url 添加前缀。但我只想问
使用它们有什么好处?不使用它们的缺点是什么?
主要优点是;当您想将项目迁移到在线或其他服务器时;您无需编辑硬编码链接。base_url() 将使您的内部链接动态获取其基本网址。
echo base_url("blog/post/123");
将返回
http://example.com/blog/post/123
在example.com
并将返回
http://jms.com/blog/post/123
在jms.com
base_url
当您使用电子邮件验证创建登录/注册或忘记密码功能时需要(通过单击http://yourdomain.com/auth/userid/code之类的链接进行验证)。这只是一个例子,可能有很多用途。
base_url()
和的区别site_url()
在于
两者都返回您网站的网址,但site_url()
返回您的网站网址,附有附件index.php
或您在其中配置$config['index_page'] = ''
的内容application/config/config.php
例子www.yoursite.com/chicken/turkey
使用时base_url()
:返回您的站点基本 URL,如您的配置文件中指定的那样。你会得到wwww.yoursite.com
使用时site_url()
:你会得到www.yoursite.com/index.php
site_url()
如果您没有更改您的.htaccess
并且您仍然可以访问您的控制器,这很有用index.php
base_url()
在链接您的 css、js 或媒体内容时很有用。index.php
授予您在访问控制器/方法时仍然使用的权限
我通常使用base_url()获取静态文件(css、js、img)文件的正确路径,使用site_url()获取页面链接。site_url()将返回,url_suffix
可以在application/config/config.php文件中设置女巫
它需要无处不在,或者至少我们应该在任何地方使用。你知道吗,绝对网址比相对网址好得多?因此,当您为站点上的所有链接使用绝对 URL 时,您可以使用“base_url()”函数,而不是硬编码的根域名。此外,CI reactor 非常智能,可以检测原始基本 url,因此您甚至不需要在配置文件中输入它。
优点:-如果您不使用 base_url() 并且想要切换站点的目录/服务器,则应该更改整个项目的路径。
如果您使用 base_url(),只需在 config.php 中一次性更改它,对所有站点都有效。