[英]How can I use relative path in CodeIgniter?
我對相對路徑有所了解。 假設我有一個關於codeigniter的項目。 有4個控制器,例如功能名稱:
1. Admin->index,profile,add_student,edit_marks,make_admin,
2. Teacher->index,add_marks,update_marks
3. Student->index,view_teacher,view_result
4. Guest->index,view_Student, view_marks,view_result
從這些中,如何使用它們作為相對路徑?提醒一下,有時我將一個控制器轉到另一個控制器,例如profile,view_marks是所有人的常用功能,因此每個人都可以訪問它。
對於圖像或文件,我可以使用相對路徑嗎? 然后,假設我在根文件夾下有一個圖像-> root_folder / template / images / a.png。 如何使用它作為相對路徑?
確實,我需要在Codeigniter中使用應用程序時具有相對路徑的核心知識。
您應該使用在root / index.php中定義的codeigniter常量
要獲取根路徑,請使用
FCPATH
它返回
到安裝您的codeigniter的根文件夾的路徑。
因此,根據您的情況,
FCPATH。 '模板/圖像/ a.png';
我假設您正在尋找路徑而不是URL。
最后,我找到了答案:
不必每次都使用base_url或site_url進行鏈接。
所有時間使用:
/controller_name/function_name
例如關於查看管理員個人資料代碼的錨鏈接(我希望這種技術稱為相對路徑)。 它減少了路由時間。
<a href="/admin/profile">Admin Profile</a>
將其用於圖像路徑有什么問題?
base_url('path/to/image')
如果有像ROOT |____APPLICATION |____ASSETS | |________ CSS | |________ JS | |________ IMG |____SYSTEM
這樣的senario ROOT |____APPLICATION |____ASSETS | |________ CSS | |________ JS | |________ IMG |____SYSTEM
ROOT |____APPLICATION |____ASSETS | |________ CSS | |________ JS | |________ IMG |____SYSTEM
那么您可以按如下方式訪問CSS:
<script type="text/javascript" src="<?php echo base_url();?>assets/css/style.css"></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/js/getinfo.css"></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/img/image.png"></script>
當前接受的答案很好,但是不是相對的。 例如:如果將網站從根目錄替換為子目錄,則該URL將不再起作用。
我在這里找到有關同一主題的更多信息: 如何使用Codeigniter php框架顯示圖像?
該主題中的答案建議不要使用相對路徑,但我個人希望在模塊(用於CodeIgniter的MX插件)中看到這種可能。
因此,這是使用我發現的相對路徑的一種可能方法:
<?php $path = base_url(str_replace(FCPATH,"", __DIR__ )).'/'; ?>
用法示例:
<img src="<?php echo $path;?>../assets/img/myImage.png" />
例如:如果將此html用於/modules/mymodule/views/someviewfile.php,則輸出將為yourdomain.com/modules/mymodule/assets/img/myImage.png
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.