php不会从另一个文件导入变量

php不会从另一个文件导入变量,php,mysql,Php,Mysql,我正在使用登录/注册系统和mysql开发一个云系统,但问题是php没有导入我包含的变量 这是我的配置文件: <?php // Connection details $servername = "localhost"; $username = "root"; $password = "password"; $dbname = "database"; ?> require("/classes/config.class.php"); 当我尝试回显配置中定义的变量时,会出现以下错误:

我正在使用登录/注册系统和mysql开发一个云系统,但问题是php没有导入我包含的变量

这是我的配置文件:

<?php
// Connection details
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "database";
 ?> 
require("/classes/config.class.php");
当我尝试回显配置中定义的变量时,会出现以下错误:

注意:第2行C:\xampp\htdocs\index.php中的未定义变量:servername

我在本地计算机上使用xampp,它有php版本5.5.30

编辑:php的第一行,来自注释

<?php 
// Include classes require("/classes/user.class.php"); 
require("/classes/password.class.php"); 
// Include configuration require("/classes/config.class.php"); 
echo $servername; echo $username; echo $password; echo $dbname;

在包含变量之前,应检查是否尝试使用变量


还要检查文件是否正确包含(
require();
在php标记中,并且没有注释掉(
//require

在包含它之前,您应该检查是否尝试使用变量


还要检查文件是否正确包含(
require();
在php标记中,并且没有注释(
//require

我写了一个答案,因为我不能在注释中键入回车

您在index.php中的代码(如上所述):


  • 阅读更多关于

    • 我写答案是因为我不能在注释中键入回车

      您在index.php中的代码(如上所述):


      • 阅读更多关于

      如果这不起作用,您可能只是在错误的范围内

      可能是您的include在函数中,那么您需要将变量的设置更改为:

      $GLOBALS['servername'] = 'localhost';
      
      或者您正在函数/类中使用变量。然后你必须使用全局关键字

      myFunction() {
        //$servername is not defined here
        global $servername;
        // now $servername is defined and the global var is used
      }
      
      但是我认为你应该做一些更有用的事情:使用常量

      define('SERVERNAME','localhost');
      
      然后获取常量(在任何范围内):


      如果这不起作用,您可能只是在错误的范围内

      可能是您的include在函数中,那么您需要将变量的设置更改为:

      $GLOBALS['servername'] = 'localhost';
      
      或者您正在函数/类中使用变量。然后你必须使用全局关键字

      myFunction() {
        //$servername is not defined here
        global $servername;
        // now $servername is defined and the global var is used
      }
      
      但是我认为你应该做一些更有用的事情:使用常量

      define('SERVERNAME','localhost');
      
      然后获取常量(在任何范围内):

      Config.php文件:

      $database_host = "host";
      $database_user = "user";
      $database_pass = "pass";
      $database_name = "name";
      
      要从中调用配置变量的其他文件:

      require_once 'Config.php';
      $db = mysqli_connect($database_host, $database_user, $database_pass, $database_name);
      
      Config.php文件:

      $database_host = "host";
      $database_user = "user";
      $database_pass = "pass";
      $database_name = "name";
      
      要从中调用配置变量的其他文件:

      require_once 'Config.php';
      $db = mysqli_connect($database_host, $database_user, $database_pass, $database_name);
      

      检查错误日志。您是在web服务器上执行此操作的吗?@JayBlanchard在我的本地计算机上没有xampp,因此您试图访问require行之前的变量?您能显示
      index.php
      的第一行吗?错误显示为“第2行”:那么当您导入
      config.class.php
      时?在第1行,在
      /
      旁边是注释符号:忽略以下文本。删除
      /
      要求之前的以下文本。更好:在
      检查错误日志后返回回车。您是在web服务器上执行此操作的吗?@JayBlanchard在我的本地计算机上没有xampp,因此您试图访问require行之前的变量?您能显示
      index.php
      的第一行吗?错误显示为“第2行”:那么当您导入
      config.class.php
      时?在第1行,在
      /
      旁边是注释符号:忽略以下文本。删除
      /
      要求之前的以下文本。更好:在