[英]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.