我有DirectoryIndex index.php
,並希望include './';
但我得到failed to open stream: Is a directory
包括默認的DirectoryIndex
我當然include substr($someString, -1)==='/'?$someString.'index.php':$someString;
,但有一個更簡單的方法?也許在.htaccess或php.ini的東西?
不是答案。
我有DirectoryIndex index.php
,並希望include './';
但我得到failed to open stream: Is a directory
包括默認的DirectoryIndex
我當然include substr($someString, -1)==='/'?$someString.'index.php':$someString;
,但有一個更簡單的方法?也許在.htaccess或php.ini的東西?
不是答案。
您不能包含目錄。 PHP只會接受一個有效的文件作爲include的參數,所以如果你想能夠使用「./」或「somedir /」並讓它在該目錄中找到index.php文件,你總是可以寫一個函數,它將dir作爲參數並返回其中的索引文件的完整路徑。
喜歡的東西:
function index($dir){
return substr($dir, -1) === '/' ? $dir.'index.php' : $dir;
}
然後,你可以打電話include index("./");
或其他一些目錄名,並將它返回正確的字符串。
,如果你想從當前目錄,包括你不需要任何路徑:如果你想從遠程文件包含你應該從http
include 'http://www.example.com/file.txt';
經辦人開始
include 'index.php';
其他:WINDOWS PHP 4.3.0以前版本的PHP不支持通過此函數訪問遠程文件,即使allow_url_fopen已啓用。
否則,如果你想包含相對路徑,你可以開始'/
......然後你從你的主機根或'../
......開始從子目錄開始說明。
你沒有回答這個問題。具體的目錄是未知的。我想要一個能夠使目錄變成索引文件的東西,比'substr($ someString,-1)==='/'更容易嗎?$ someString.'index.php':$ someString;'可能是.htaccess中的一些東西或php.ini。 – bjb568
我不明白你爲什麼想要這樣做,而不是簡單地將'index.php'字符串添加到'./'的末尾。 'include'./index.php';'怎麼了? – aviemet