[請益] include_once的相關問題

看板PHP作者 (加油加油^^)時間14年前 (2011/08/28 22:27), 編輯推噓3(3010)
留言13則, 5人參與, 最新討論串1/1
各位大大 想請問 一個載入檔案的問題 我的每一隻PHP 都會載入一隻很多function的檔案 例如叫作 myfunc.php 這隻程式 跟載入它的檔案是不同檔案夾的 例如說 include_once('php/myfunc.php'); ---------------------------------------- 在這個php資料夾中 還有一個myfunc2.php也許要載入 必須放在myfunc.php裡面 直接在myfunc.php裡面進行了載入 include_once('php/myfunc2.php'); 這件事已經行之有年 ---------------------------------------- 問題來了 今天php 資料夾裡面有一支程式叫作 some.php 也需要載入myfunc.php 要用到裡面的函式 但是因為 include_once('php/myfunc2.php'); 所以會有錯誤發生。 希望在不使用絕對路徑 且只更動 some.php myfunc.php的 狀況下解決這件事 不知道大大有沒有遇過 解答一下 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.144.215

08/28 22:51, , 1F
改成include_once('myfunc2.php');試試
08/28 22:51, 1F

08/28 23:15, , 2F
在其他檔案裡 define('INCPATH','php/');
08/28 23:15, 2F

08/28 23:16, , 3F
在func.php裡加上 if(!defined('INCPATH')) define('IN
08/28 23:16, 3F

08/28 23:16, , 4F
CPATH','./');
08/28 23:16, 4F

08/28 23:17, , 5F
並修改include_once('php/myfunc2.php')成為
08/28 23:17, 5F

08/28 23:17, , 6F
include_once(INCPATH.'myfunc2.php')
08/28 23:17, 6F

08/28 23:19, , 7F
之後其他檔案要用include(INCPATH.'myfunc.php')
08/28 23:19, 7F

08/28 23:35, , 8F
另一個方法:include_once(dirname(__FILE__)."mf2.php");
08/28 23:35, 8F

08/28 23:36, , 9F
dirname() ← 取得路徑的資料夾名稱 C:/PHP/a.php→C:/PHP
08/28 23:36, 9F

08/28 23:36, , 10F
/
08/28 23:36, 10F

08/28 23:36, , 11F
__FILE__ ← 這份檔案的路徑名稱
08/28 23:36, 11F

08/29 08:25, , 12F
同層的檔案,相對路徑錯了吧?
08/29 08:25, 12F

08/29 12:22, , 13F
感謝LaPass 我就是記得有一個魔術用法 感謝 我成功了
08/29 12:22, 13F
文章代碼(AID): #1EMb1EGT (PHP)
文章代碼(AID): #1EMb1EGT (PHP)