[英]CodeIgniter relative path or base URL function?
这些天来,我一直认为CodeIgniter不允许直接访问应用程序中的文件(我指的是应用程序本身,而不是应用程序文件夹)。
因此,如果我在文件夹www下具有以下结构:
ROOT
|____APPLICATION
|___________JS/mine.js
|___________VIEWS/my_view.php
而且,如果我想在mine.js
中包含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>
有什么想法/意见吗?
哪个是好的做法? 又为什么呢?
使用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.