php:在另一个类

时间:2017-07-25 07:40:11

标签: php class

我有一个config.php:

<?php
class GConfig {
   public $DbServer = "localhost";
   public $DbName = "golee";
   public $DbUser = "golee";
   public $DbPassword = "SASASASASAS";
   public $CharSet = "UTF8";
}
?>

我还有一个名为functions.php的文件:

<?php
class DataBase {

   function opendb() {
       $node = mysqli_connect($config->DbServer, $config->DbUser, $config->DbPassword);
       mysqli_select_db($node, $config->DbName);
       mysqli_set_charset($node, "$config->CharSet");
       return $node;
   }

}
?>

这两个文件包含在index.php中:

<?php
   include "config.php";

   $config = new GConfig;
   echo $config->DbServer;

   include "functions.php";
   $datab = new DataBase();
   $dbnode = $datab->opendb();

?>

&#34; echo $ config-&gt; DbServer;&#34;显示值:localhost即可,所以我可以访问GConfig类中定义的变量,即使我写了&#34; echo $ config-&gt; DbServer;&#34;在functions.php。

的开头

但我得到一个错误&#34;未定义变量:第5行&#34;中的functions.php中的配置。

我也尝试像这样扩展GConfig类但不起作用:

class DataBase extends GConfig {
       function opendb() {
           $node = mysqli_connect($config->DbServer, $config->DbUser, $config->DbPassword);
           mysqli_select_db($node, $config->DbName);
           mysqli_set_charset($node, "$config->CharSet");
           return $node;
       }

}

我的问题是如何访问GConfig类中定义的DataBase类中的变量? 我已经在类似的主题中阅读了很多问题和答案,但是他们没有描述我遇到的同样问题。

问题不在于,如果一个文件中定义的变量在另一个文件中可用。

2 个答案:

答案 0 :(得分:1)

只需在functions.php文件中创建新对象,然后就可以在函数中访问此类。

<md-sidenav-container layout="column" flex style="background: plum;" fullscreen>
  <md-toolbar color="primary" >
      <button md-button (click)="sidenav.toggle()"><md-icon class="md-18|md-24|md-36|md-48">menu</md-icon></button>
      <span>Hems IRCA</span>
      <span class="example-spacer"></span>
  </md-toolbar>

...

答案 1 :(得分:0)

您可以将$this替换为class DataBase extends GConfig { function opendb() { $node = mysqli_connect($this->DbServer, ($this->DbUser, $this->DbPassword); mysqli_select_db($node, $this->DbName); mysqli_set_charset($node, "$this->CharSet"); return $node; } }

来执行此操作
import time   
time.sleep(x)