我最近将一个大型 CubeCart 安装移到了新服务器上,它产生了一大堆问题。他们中的大多数我都被错误地整理出来,但我坚持这个:
在主 index.php 文件中包含配置文件,它设置关键变量,如 $glob['rootDir']。然后几行之后,在主 index.php 文件中包含另一个重要脚本,并调用其中一些 $glob 变量,但在 $GLOBALS 超全局变量下。但是,这是行不通的。如果我放第二个包含的文件 var_dump($GLOBALS) 它就在那里......但是如果我放 echo $GLOBALS['rootDir'] 我什么也得不到。我没有收到任何错误或任何错误,只是未定义索引。
这是PHP设置的问题吗?该站点之前在以前的服务器上运行良好,但我不知道它正在运行什么版本的 PHP 或特定设置。
代码示例:
主要索引文件:
//INCLUDE CORE VARIABLES & FUNCTIONS
include_once("includes/global.inc.php");
//... other stuff ...
include_once("includes/sessionStart.inc.php");
GLOBAL.INC.PHP:
$glob['dbhost'] = 'localhost';
//other variables, including $glob['rootRel'];
SESSIONSTART.INC.PHP:
$sessionDomain = substr($GLOBALS['rootRel'],0, strlen($GLOBALS['rootRel'])-1);
//the above is where it throws Undefined Index
谢谢!