Php 在多个页面上继承变量的问题

Php 在多个页面上继承变量的问题,php,Php,我在bootconfig.php上有这段代码,它加载在我的所有页面中 // What languages do we support $available_langs = array('en','it'); // Set our default language session $_SESSION['lang'] = 'en'; if(isset($_GET['lang']) && $_GET['lang'] != ''){ // check if the langu

我在bootconfig.php上有这段代码,它加载在我的所有页面中

// What languages do we support
$available_langs = array('en','it');

// Set our default language session
$_SESSION['lang'] = 'en';   

if(isset($_GET['lang']) && $_GET['lang'] != ''){ 
// check if the language is one we support
if(in_array($_GET['lang'], $available_langs))
{       
  $_SESSION['lang'] = $_GET['lang']; // Set session
}
}
// Include active language
      include($_SESSION['path'].'languages/'.$_SESSION['lang'].'/lang.'.$_SESSION['lang'].'.php');




//Include LIB
include($_SESSION['path']."lib/auth.class.php");
include($_SESSION['path']."lib/register.class.php");
include($_SESSION['path']."lib/string.class.php");


//Include Other Config File
require_once('./config/stringsecure.php');
require_once("./config/menuconfig.php");
require_once("./config/headerconfig.php");
require_once("./config/contentconfig.php");
require_once("./config/forumconfig.php");
require_once("./config/titleconfig.php");
require_once("./include/vocaboli/vocaboliconf.php");
例如,在lang.en.php文件中,我有$lang['contactme'],但是如果我在menuconfig.php中使用它,它就不存在了。。。
如果我将echo$lang['contactme']放在bootconfig的末尾,它会工作,但在menuconfig中不会。为什么?

现在的菜单配置将出现在bootconfig中,但不是相反


我认为include是反向的:如果你想
$lang
出现在菜单配置中,你需要在该文件中使用
require\u一次('bootconfig.php')

这可能是一个简单的范围界定问题。可能在其中一种情况下,您位于函数内部。 在函数内部,您不能访问全局变量

可能
$GLOBALS['lang']['contactme']
会起作用

详情如下:


是的,但它是针对语言的,我不能在所有文件中都包含bootconfig。。。还有别的方法吗?