我正在使用PHP 5.6.16设计一个网页,试图使用一些OOP的想法。 当我在文件index.php中包含文件classnews.php时,我收到错误
Undefined variable: connect in classtin.php
classdb.php:
<?php
class db
{
public $hostname = "localhost";
public $user= "root";
public $pass = "";
public $db = "test";
/* public $connect = NULL;
public $result = NULL;*/
function __construct()
{
$connect = mysqli_connect($this->hostname, $this->user, $this->pass,$this->db);
mysqli_set_charset($connect,'utf8');
}
}
?>
classnews.php:
<?php
include_once('classdb.php');
class tin extends db
{
public function tinmoi()
{
$sql= "select * from emp ";
$result= mysqli_query($connect,$sql);
return $result;
}
}
?>
答案 0 :(得分:1)
您需要$this
引用班级成员。例如,与$this->hostname
相同的方式。
修改您的代码部分:
class db
{
public $hostname = "localhost";
public $user= "root";
public $pass = "";
public $db = "test";
public $connection;
public function __construct()
{
$this->connection = mysqli_connect($this->hostname, $this->user, $this->pass,$this->db);
mysqli_set_charset($this->connection,'utf8');
}
}
class tin extends db
{
public function tinmoi()
{
$sql = "select * from emp ";
return mysqli_query($this->connection, $sql);
}
}
同样,我强烈建议在PHP中查看OOP的基础知识:http://php.net/manual/en/language.oop5.basic.php