方法一:先獲得當前檔案所在檔案夾的長度,然後用substr來截取掉該長度:
複製代碼 代碼如下:
$dirName = str_replace("\\", "/", dirname(__FILE__));
$dirNameLength = strlen($dirName);
$currentDirNameLength = $dirNameLength - strrpos($dirName,"/"); //獲得當前檔案所在檔案夾的長度!
$parentDirName = substr($dirName,0,-$currentDirNameLength); //第3個參數如果為負數,那麼表示從後面截取掉【該參數的絕對值】個字元。
方法二:將當前檔案所在檔案夾當作一個檔案(檔案夾其實是特殊的檔案,一切皆為檔案!!),直接用dirname嵌套一次dirname即可:
$parentDirName = dirname(dirname(__FILE__));
從上可以看出:對事物的深刻認識,能大幅度提高代碼品質!
附上:PHP擷取路徑或目錄實現
PHP擷取目錄和的方法通過魔術變數;通過超級全域變數;通過相關函數等等:
<?php/** * PHP擷取路徑或目錄實現 */ //魔術變數,擷取當前檔案的絕對路徑echo "__FILE__: ========> ".__FILE__; echo '
'; //魔術變數,擷取當前指令碼的目錄echo "__DIR__: ========> ".__DIR__;echo '
'; //dirname返迴路徑的目錄部分,dirname(__FILE__)相當於__DIR__echo "dirname(__FILE__): ========> ".dirname(__FILE__);echo '
'; //$_SERVER['PHP_SELF']和$_SERVER['SCRIPT_NAME']的結果一般相同,他們都是擷取當前指令碼的檔案名稱//只有當php以cgi方式運行時有區別,但是現在幾乎找不到以cgi方式運行php了echo '$_SERVER["PHP_SELF"]: ========> '.$_SERVER['PHP_SELF'];echo '
'; echo '$_SERVER["SCRIPT_NAME"]: ========> '.$_SERVER['SCRIPT_NAME'];echo '
'; //當前執行指令碼的絕對路徑。記住,在CLI方式運行php是擷取不到的echo '$_SERVER["SCRIPT_FILENAME"]: ========> '.$_SERVER['SCRIPT_FILENAME'];echo '
'; //當前運行指令碼所在的主目錄。在伺服器設定檔中定義。echo '$_SERVER["DOCUMENT_ROOT"]: ========> '.$_SERVER['DOCUMENT_ROOT'];echo '
'; //getcwd()返回當前工作目錄echo "getcwd(): ========> ".getcwd();echo '
';
以上就介紹了init.php檔案 PHP擷取當前檔案的父目錄方法匯總,包括了init.php檔案方面的內容,希望對PHP教程有興趣的朋友有所協助。