使用$ base_url与不在CodeIgniter上使用它之间的区别

时间:2013-06-20 06:03:13

标签: php codeigniter

基本上,这两种方法之间有什么区别:

<img src="<?php print base_url(); ?>img/test.png" />
<!-- and -->
<img src="/img/test.png" />

我的网站上的结果相同。不妨删除控制器上的URL帮助器($this->load->helper('url'))以减少额外的进程,因为它们只是一样。

如果有添加助手的优点,请告诉我。

4 个答案:

答案 0 :(得分:3)

区别在于您是否希望将应用程序放在子目录中。

如果/ now现在成为/ application /您的所有站点根引用将会中断。

它只是让您的应用程序可以随意安装在任何地方,并且不需要在站点根目录上。

答案 1 :(得分:0)

根据我对CodeIgniter的使用经验,使用base_url()是最佳做法。它最终保证您的链接是正确的(类似于当您需要的文件夹高1级时添加../的方式)。此外,我在过去遇到过问题,CodeIgniter在config [base_url]中添加了两次url,如果我忘了将http://放入其中。简单的错误,但它可以抛弃整个项目。所以,基本上不同的是它保证路径是正确的,但并不是必须的。

答案 2 :(得分:0)

如果您使用域的根路径,则没有区别。

它就像一个功能,如果你使用它,你可以更容易地迁移到任何域或目录路径。

另一个优势是,当您开发API或RSS提要时,图像路径或其他任何内容将被写为完整的URL,以便消费者可以轻松使用它。

答案 3 :(得分:0)

我在site_url()中发现了另一件事。这是我发现在我的网址末尾设置/的唯一方法。 例如:将产生http://domaine.tld/controller

另一方面http://domaine.tld/controller/ 希望能帮助某人