2017-07-17 70 views
0

是什麼區別: ../../../my_dir/my_file.php用`/`前綴的文件路徑和省略了文件路徑的區別是什麼?

我是用PHP工作

/../../../my_dir/my_file.php

包括(不能包括定期,我懷疑這是因爲我的文件,我在使用的命名空間包括從),後者沒有工作,我隨機添加/之前的文件路徑,現在一切工作正常。自從閱讀了關於該正斜槓的功能之後,我完全感到困惑,因爲/指的是根目錄,因此看起來我的代碼不起作用,因此/../../../是根級目錄的三個級別?這到底意味着什麼?我真的不知道爲什麼我的代碼正在工作,並且該文件正在被包含在內。

因此,如果/是根目錄,並且我要向上三級,那麼爲什麼一切正常?它不應該拋出一些錯誤?

此外,根目錄是否可以更改?據我瞭解,在Windows中,我的根目錄現在是C:驅動器,你可以將你的根從C:改爲你的項目中的目錄嗎?

這裏是如果你有興趣在該文件考慮看看一個要點,其中這一切是怎麼回事:https://gist.github.com/doubleOrt/09a2b0b97f632143f89e07f21bb974ad

+0

主要的斜線說轉到ROOT FOLDER。沒有它從你所在的位置應用路徑指令 – RiggsFolly

+0

是的,但請參閱我的問題的描述。這是我沒有得到的部分,如果我要到根文件夾(在Windows中,我的''C:'驅動器,對不對?),然後我上升幾個級別,那麼爲什麼我的代碼工作?當我去到根文件夾的父母時,我最終會在哪裏結束?什麼是根文件夾的父項? – Taurus

+0

相對和絕對路徑。 – Qirel

回答

0

/../../../my_dir/my_file.php

這將根據根目錄更改目錄。

./../../../my_dir/my_file.php

這將更改目錄,相對於在那裏的執行

../ .. /../../my_dir/my_file.php

這只是上升了上升,達到了MY_DIR/my_file.php

據我所知,在Windows中,我的根目錄現在是C:驅動器,你可以改變你的根目錄從C:來說,你的項目中的目錄?

不確定,但你不想要這樣,因爲它會與你的生活環境不同。根應該永遠是根。

+0

鏈接到我的代碼:https://gist.github.com/doubleOrt/09a2b0b97f632143f89e07f21bb974ad – Taurus

+0

@Taurus好的...你問的差異,不知道你還想要什麼? – Ian

+0

爲什麼我的代碼工作,如果我實際上去根目錄?看到我的問題的描述,我又添加了一些東西。 – Taurus