[英]require_once failed to open stream: No such file or directory - even if relative path seems to be correct(?)
好吧,我有這個dashboard.php文件:
<?php
require_once ('../resources/config.php');
?>
我的文件樹如下所示:
/家/名/的public_html /
我真的不知道這到底是怎么回事,我在另一個PHP腳本的完全相同的目錄中使用了完全相同的include,並且一切運行良好。
有任何想法嗎?
編輯:我注意到在某些情況下,從服務器上同一目錄調用的文件的相對路徑是不同的,現在我知道為什么了。 我使用index.php
來控制URI請求並擁有更好的URL,我在那里有一個switch
語句,該語句使用include
來調用所請求的文件,因此,如果其中包含一個腳本也具有include / require語句,則路徑會改變。
我現在正在嘗試解決此問題,但是我是一個非常初學者,因此您的任何建議都將非常有幫助。
非常感謝大家,到目前為止,他們都回答了!
我通常使用文件的真實路徑,如下所示:
require_once(realpath(dirname(__FILE__)) . '/../../general_controler/database_manager.php');
本示例來自我的DataImporter抽象類,使用DatabaseManager抽象類。
在此示例中,我的樹結構如下所示:
(主域)/PC_administration_interface/Controler/data_importer.php
(主域)/general_controler/database_manager.php
在您的情況下,將是這樣的:
require_once (realpath(dirname(__FILE__)) . '/../resources/config.php');
否則,以“ /”開頭的路徑從根開始。 在Xampp中,htdocs是網站的根文件夾,在我的情況下,它可能是這樣的(因為我的general_controler文件夾直接在根目錄中):
require_once('/general_controler/database_manager.php')
我想對您來說,它就像(假設home是根目錄的子文件夾):
require_once('/home/name/public_html/resources/config.php');
第一個解決方案可能是最好的……無論如何,您應該嘗試一下。
我希望它能解決您的問題,
蒙特利爾的JonathanParent-Lévesque
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.