繁体   English   中英

CodeIgniter的相对路径或基本URL函数?

[英]CodeIgniter relative path or base URL function?

这些天来,我一直认为CodeIgniter不允许直接访问应用程序中的文件(我指的是应用程序本身,而不是应用程序文件夹)。

因此,如果我在文件夹www下具有以下结构:

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

而且,如果我想在mine.js中包含mine.jsmy_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>

有什么想法/意见吗?

哪个是好的做法? 又为什么呢?

使用base_url()始终是一个明智的主意,因此,如果您的URL发生更改,则所有链接都不会中断。

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

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

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

然后像这样引用:

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

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

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

因此,我认为您提到的上述方法是正确的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM