CodeIgniter相对路径或基本URL功能?

时间:2013-05-06 16:54:32

标签: php javascript codeigniter

所有这些天我都认为CodeIgniter不允许直接访问应用程序中的文件(我的意思是应用程序本身而不是应用程序文件夹)。

所以,如果我在文件夹下有以下结构,www:

ROOT
|____APPLICATION
        |___________JS/mine.js
        |___________VIEWS/my_view.php

如果我想在mine.js中包含my_view.php,我需要使用base_url()函数来引用JS文件,如下所示:

<script type="text/javascript" src="<?php echo base_url();?>js/mine.js"></script>

看起来我错了,我也可以参考它。像:

<script type="text/javascript" src="../js/mine.js"></script>

有什么想法/意见吗?

哪一个是好习惯?为什么?

2 个答案:

答案 0 :(得分:8)

使用base_url()始终是明智之举,因此,如果您的网址发生变化,您的所有链接都不会中断。

base_url()将返回完整的顶级域名,以及您网站所在的所有文件夹。

最佳做法是将资产保留在应用程序或任何其他系统文件夹之外。大多数CodeIgniter站点将按如下方式构建其资产:

ROOT
|____APPLICATION
|____ASSETS
|      |________ CSS
|      |________ JS
|      |________ IMG
|____SYSTEM

然后像这样引用:

<script type="text/javascript" src="<?php echo base_url('assets/js/mine.js')"></script>

答案 1 :(得分:4)

使用MVC将所有资产文件夹(css,js和images)保存在根目录中而不是保留在应用程序或任何其他文件夹中并使用base_url访问它们时,总是一个好主意。

<script type="text/javascript" src="<?php echo base_url();?>js/mine.js"></script>

所以我认为你提到的上述方法是正确的方法。

相关问题