PHP 回傳絕對路徑 - realpath

PHP 在 include path 裡面, 若有相同檔名的狀況, 寫死路徑可以避免, 但是若要 Debug 遇到此狀況, 該如何判斷載入的檔案是預期內的呢?

PHP 的 realpath 可以將此檔案的絕對完整路徑印出來.

PHP realpath 範例

註: 範例取自 PHP 官方文件

  • echo realpath('./../../etc/passwd');

    /etc/passwd

  • echo realpath('/windows/system32');

    C:\WINDOWS\System32


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 Programming。將永久鏈結加入書籤。

PHP 回傳絕對路徑 - realpath 有 2 則回應

  1. clifflu 說道:

    最近玩 CodeIgniter,裝在 Windows7 / IIS 7.5
    網頁目錄是從其他位置利用虛擬資料夾開啟
    在這樣的目錄中,使用 realpath('system') 無法抓出該資料夾的實際位置
    如果有這類需求的話,可以在判斷時加上 elseif 來處理
    if (false === realpath('system')) {
    // blah blah
    } elseif (false === realpath(__DIR__.'system')) {
    // blah blah
    }

  2. Tsung 說道:

    感謝提供~ Orz..

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料