PHP define()似乎没有使用include()

Sal*_*ara 11 php class include

我一直在尝试使用OO PHP,目前有三个文件.我有一个class_lib.php,目前只有一个databaseServer类,一个index.php文件和一个definitions.php文件.我想将所有敏感数据库信息放入定义文件中.但是,当我这样做时,我在尝试连接数据库时遇到错误:"Unkown server DB_HOST".我的定义文件是:

<?php
define("DB_HOST","localhost");
define("DB_USER","root");
define("DB_PASS","password");
define("DB_NAME","database");
?>
Run Code Online (Sandbox Code Playgroud)

然后我在索引文件中使用它们,如下所示:

include('definitions.php');
include('class_lib.php');

$testing = new databaseServer();

$testing->connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
Run Code Online (Sandbox Code Playgroud)

我在databaseServer类中使用的函数是这样的:

    function connect($host,$user,$pw,$db) {
        $this->con = mysql_connect($host,$user,$pw);
        if (!$this->con) {
            die('Could not connect: ' . mysql_error());
            }
        $this->selectDb($db);
        }

    function selectDb($database) {
        $this->db = mysql_select_db($database,$this->con);
        if (!$this->db) {
            echo "Could not Select database: " . mysql_error();
            }
        }
Run Code Online (Sandbox Code Playgroud)

任何想法为什么这不起作用?我也尝试将定义文件放入class_lib文件中的include中,但它仍然不起作用.

Pek*_*ica 5

这应该工作正常,我从来没有看到它不起作用.

  • 100%确保包含的顺序正确(需要先加载定义)

  • 在"definitions.php"文件和索引文件中进行常量值的测试输出

  • 100%确定您正在调用正确的文件