0

我有一个带有此代码的 php 文件 tableinfo.php ->

<?php
$table_info = array(
    array(
        'table_name' => 'managers',
        'n_cols' => '4',
        'col_info' => array(
            'Name' => 's',
            'ldap' => 's',
            'avrsid' => 'i',
            'bu' => 's'
        ),
    )
);
?>

我已将此文件包含在另一个文件 /controllers/connection.php 中,如下所示 ->

include $_SERVER['DOCUMENT_ROOT'] . '/controllers/tableinfo.php';

connection.php 有一个名为 connection 的类,它在函数中使用 $GLOBALS 从 tableinfo.php 访问数组,如下所示 ->

$types .= $GLOBALS['table_info'][0]['col_info'][$filters[self::filters][$i][self::field]];

其中 $types 是一个字符串, $filters 是另一个具有我想要的字段名称的变量。

我像这样自动加载connection.php - >

spl_autoload_register(function ($class) {
    require_once($_SERVER['DOCUMENT_ROOT'] . '/controllers/' . $class . '.php');
});

现在,我有两个页面,root/js/managers.php 和 root/js/ldap.php,在 manager.php 上一切正常,但在 ldap.php 上它给出了这个错误 ->

注意:未定义索引:table_info in

C:\xampp\htdocs\avrs\htdocs\controllers\connection.php 在第 76 行

我无法弄清楚我做错了什么。请建议。提前致谢。

4

1 回答 1

0

好吧,您的实际错误(注意:未定义的索引:table_info)意味着它正在寻找一个带有名为 table_info 的索引的数组,并且它正在返回一个 NULL(您应该使用 isset() 类似的东西)。

基本上,您的 $table_info 数组并没有像您想象的那样在 tableinfo.php 中设置。因此,请确保您正确包含它(使用正确的路径)并从那里开始。除非能够实际查看您的代码,否则很难判断。

于 2013-08-27T20:52:43.770 回答