作者LaPass (LaPass)
看板PHP
標題[請益] 相對路徑的問題
時間Thu Jul 28 21:42:24 2011
假設,我網站的資料夾是長這樣:
根目錄─┬─資料夾A─┬─B.txt
│ │
└─A.php └─B.php
其中, B.php 會去讀取 B.txt
在寫的時候如果是使用相對路徑,那就是像這樣:
$handle = fopen("B.txt", "r");
直接運行B.php的時候,沒有任何問題。
但是
假設在寫 A.php 時,會用到 B.php 中的東西
那很直覺的會讓人直接這樣用:
include("/資料夾A/B.txt");
但這樣一來,程式就死掉了
因為執行到 B.php 時
程式會去根目錄
(跟A.php同一層) 找 B.txt
然後會找不到檔案,出現錯誤
我所能想到的解決方法
是把呼叫 B.txt 路徑換成相對路徑
但是這很麻煩
當我寫的程式一多,日後要移機的話,會改到昏天黑地
我想請問....
這種問題該如何解決呢?
有沒有兼具移機方便跟程式叫用方便的方法?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.233.156.134
→ xxxzzz:dirname(__FILE__) . 'B.txt'; 07/28 23:44
→ xxxzzz: '/B.txt'; 07/28 23:46
→ LaPass:thx ^^" 07/29 10:59
推 mecumi:php5.3可以用 __DIR__ 來取代dirname(__FILE__) 07/30 12:18