[PHP] 在Linux和Windows下的路徑設置問題

我在一般情形下都在windows開發程式,
在這次的PHP我才特別注意到,
關於Linux和Windows的路徑設置差別。



Windows絕對路徑:以盤符開始 如C:/a.txt 、C:\a.txt
Windows相對路徑: 
.      指的是當前目錄 
..     指的是當前目錄的上一級目錄 
./test 表示當前目錄下的test文件夾 
/test  表示當前盤符下的test文件夾 
Linux絕對路徑:以root根目錄/開始的路徑 如/ 表示root根目錄 
Linux相對路徑: 
./     指的是當前目錄 
../    指的是當前目錄的上一級目錄 

.代表當前目錄,..代表上級目錄 好像是統一的,
看似相同,其實用起來還是差別很大。

但是問題是,Windows可以接受「/」、「\\」,Linux只接受「/」;他們在Windows的相對路徑不見得可以在Linux上正常使用。
因此,在跨平台PHP程式的設計上,應該使用dirname(__FILE__)來得到目前程式的路徑,避免因為系統在絕對路徑上的差異所造成的不相容。同時也應該只使用兩個系統都認得的「/」來設置路徑。

TAG: dirname, linux, Path, php, Windows

留言

這個網誌中的熱門文章

[Javascript] 利用Google Calendar api 存取 Google 行事曆

[滑鼠] 羅技G402 換微動