簡體   English   中英

從root檢查文件是否存在

[英]check file existence from root

我嘗試了以下代碼來檢查root文件是否存在。

if($res['profile_picture']!="" && file_exists("images/".$res['users_id']."/thumnails/".$res['profile_picture'])){
    $photo_p="images/".$res['users_id']."/thumnails/".$res['profile_picture'];
}

它僅適用於根目錄而非子目錄。

我不確定函數file_exist是否檢查絕對路徑和相對路徑,所以我嘗試添加ROOT和$_SERVER['DOCUMENT_ROOT'] 但它仍然沒有成功。

任何幫助?

為了代碼可移植性,我建議你總是在file_exists()這樣的函數中使用絕對路徑,否則當你在不同的目錄中包含多個文件和/或在CLI模式下運行時,你可能會file_exists()

您的代碼中可能未定義ROOT常量。 此外,在某些情況下,無法依賴$_SERVER['DOCUMENT_ROOT'] ,即使用vhost_alias apache模塊時。

通常,

file_exists("{$_SERVER['DOCUMENT_ROOT']}/images/{$res['users_id']}/thumnails/{$res['profile_picture']}")

應該適合你。

函數file_exists()確切地檢查您給它的路徑。 那里沒有奇特的魔力。

把它作為絕對路徑,它將檢查該路徑。 交給它一個相對路徑,它將從當前工作目錄中檢查。 您可能想要考慮一下您的工作目錄究竟是什么。

暫無
暫無

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

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