簡體   English   中英

將最后一個文件夾名稱存儲在PHP中變量的路徑中

[英]Store last folder name in path to a variable in PHP

我有一個php腳本調用“ functions.php”,它本身和放置在其他文件夾中的其他腳本都執行。 因此,我在嘗試包含數據庫文件的代碼中遇到了問題。 起初,我想到了一個快速的懶惰工作。 我要腳本兩次詢問相同的文件,如下所示:

include('../database_file.php');
include('../../database_file.php'); 

但是,這不是一個好的解決方案。 每次都會發出警告,因為它無法加載其中一個文件。 因此,我決定制作一個Switch語句,以讀取functions.php文件是被自身調用還是從其他位置調用,然后從正確的路徑包含文件。 (如果有更好的解決方法,請告訴。)

我使用以下代碼讀取當前路徑,因此我可以創建一個IF語句來確定應從何處加載數據庫文件。

realpath(dirname(__FILE__));

這將返回類似於以下的路徑:

/ var / www / website / public

如何僅將最后一個文件夾存儲在變量的路徑中/刪除最后一個/之前的所有內容?

使用absolute path呢? 這樣,您將不必關心實際的文件夾是什么,無論如何該文件都將被加載。 例如

include('/var/www/website/public/path_to_file.php');

編輯

由於您聲明不能使用absolute path因此可以對路徑的變量使用explode函數,使其成為數組,現在很容易將數組的最后一個條目作為您的最后一個文件夾,並將其存儲在變量中

$path = realpath(dirname(__FILE__));
$folder_array = explode('/', $path);
$i = count($folder_array) - 1;
$folder = $folder_array[$i];
echo 'Folder is: ' . $folder;

這將輸出

Folder is: public

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM