今天我发现从我的网站部分访问我的语言文件有问题。我的结构在这里:
ROOT
|___ index.php
|___ langugages
|___ lang.cs.php
|___ lang.en.php
|___ php
|___ globals.php
|___ readDB.php
|___ writeDB.php
...
在globals.php我包括
include './languages/lang.' . $lang . '.php';
当从index.php调用globals.php - include_once' php / globals.php&#39 ;;时,一切正常,但我有readDB.php,writeDB.php,它调用include_once&#39 ; globals.php&#39 ;;这是由AJAX从index.php调用的,在这种情况下它包括php / languages / lang.xx.php,它们不存在。你有什么想法,如何以正确的方式写入lang.xx.php的路径,以便从root用户和任何其他文件夹中使用它?
我正在考虑像
这样的事情if (./languages/lang.xx.php not exists) include ../languages/lang.xx.php;
但是,这是对的吗?
答案 0 :(得分:1)
答案:
set_include_path(implode(PATH_SEPARATOR, array(__DIR__, get_include_path())));
include_once __DIR__ . '/../languages/lang.' . $lang . '.php';
现在它可以在站点树中的任何位置工作。