2015-08-26 29 views
0

我有其中有一棵樹如下網站:PHP腳本執行,如果它是在主叫用戶腳本目錄

public_html/ 
    index.php 
    lang.fr.php 
    lang.en.php 
    lang.php 
    description/ 
     index.php 
     lang.fr.php 
     lang.en.php 
... (lots of directory basically like description) 

所有index.php包括lang.php,這應該包括每個網頁的版本lang.fr.phplang.en.php。不過,如果我只是把

include("lang.{$lang}.php"); 

它包括lang.php的目錄lang.fr.php

是否有可能或必須在每個頁面中放入lang.php的內容?

+0

我想:'包括(__ DIR __「郎。{$ lang} .php「);' –

+0

不,因爲'__DIR__'返回腳本('lang.php')目錄。 「如果在include中使用,則返回包含文件的目錄。」 =>手冊 –

+0

中的魔術常數部分,您可以在包含並使用該變量之前將'__DIR__'寫入變量以使用 –

回答

0

分配__DIR__一個變量之前包括和使用該變量,包括相應的語言文件

1

我認爲問題在於include()只是在做它假設的內容,它是include_path中包含的文件。

實際上,您可以在您的PHP配置文件中更新包含路徑,或者更好的是,在腳本的持續時間內更新include_path,如果這是您的願望,請使用set_include_path()函數。最簡單的解決方案是簡單地在include()中鍵入整個路徑。

下面是一些文檔:

http://php.net/manual/en/function.set-include-path.php