我们什么时候需要在codeIgniter中使用base_url()函数?

时间:2013-02-08 02:56:09

标签: codeigniter base-url

我正在开发一个小项目,我的所有网址都是在没有base_url()功能的情况下编写的。所以我在想这些base_url()函数对我的网址有什么帮助。我知道它会根据配置文件首选项为url添加前缀。但我只是想问一下

使用它们有什么好处?什么是不使用它们的缺点?

6 个答案:

答案 0 :(得分:2)

主要优点是;当您要将项目迁移到联机或其他服务器时;您无需编辑硬编码链接。 base_url()将使您的内部链接动态获取其基本URL。

echo base_url("blog/post/123");

将返回

http://example.com/blog/post/123
在<{1}}中

并将返回

example.com
http://jms.com/blog/post/123

中的

答案 1 :(得分:1)

当您使用电子邮件验证或忘记密码功能创建登录/注册时,需要

base_url(通过单击此类http://yourdomain.com/auth/userid/code之类的链接进行验证)。 这只是一个例子,可能有很多用途。

答案 2 :(得分:0)

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非常有用 链接css,js或媒体内容时,

base_url()非常有用。授予您在访问控制器/方法时仍使用index.php

答案 3 :(得分:0)

它需要每一个地方,或者至少我们应该到处使用它。你知道吗,绝对网址比相对网址要好得多吗?因此,当您对站点上的所有链接使用绝对URL时,可以使用“base_url()”函数而不是硬编码的根域名。此外,CI reactor非常智能,可以检测原始基本URL,因此您甚至无需在配置文件中输入它。

答案 4 :(得分:0)

我通常使用 base_url()获取静态文件(css,js,img)文件的正确路径,使用 site_url()获取指向网页的链接。 site_url()将返回url_suffix,可以在 application / config / config.php 文件中设置

答案 5 :(得分:0)

优点: - 如果您不使用base_url()并且想要切换站点的目录/服务器,则应该更改整个项目的路径。

如果您使用base_url(),只需在config.php中将其更改为one,即可在所有网站上生效。