這是我使用的代碼(它的index.php文件)錯誤設置包括路徑
/* Set an include path
*/
$dir = explode('/', __DIR__);
$i = count($dir);
unset($dir[$i-1], $dir[$i-2]);
$path = implode('/', $dir);
ini_set('include_path', $path);
// require('system/base/file.php'); // ***1
/* Starter file
*/
if (file_exists('system/base/file.php')) { require('system/base/file.php'); }
else { exit('Error'); }
我正在開發具有這種結構
application/
public/
index.php
system/
而且我想要一個框架,將包含路徑設置爲根/(包含應用程序/和系統/的文件夾)。 __DIR__
給了我很多東西,如Application/xammp/htdocs/application/public/index.php
(在localhost中);我不確定客戶__DIR__
是如此不同,考慮到我對第一個路徑一無所知。我剛剛寫了那幾行,輕鬆刪除DIR中的最後2個文件夾,所以我確信無論__DIR__
是什麼路徑都是正確的。我在另一個測試環境中測試了這些線,並且它們工作正常。
發生的奇怪的事情是,如果我運行的代碼,因爲它顯示在那裏它給了我「錯誤」。而如果我只是需要system/base/file.php
之前檢查它的存在它的作品。所以如果我取消註釋(*** 1)該文件是必需的。
我該如何處理這個問題?此時在設置ini包含路徑配置方面沒有意義。 – Shoe
確實,使用ini包含路徑配置現在有點多餘。也許你應該只需要()你想要的文件,並使用set_error_handler定義一個錯誤處理程序來進行自定義錯誤管理。 –
感謝dirname()的東西和建議。我完全忘了dirname()函數。 :) – Shoe