[英]PHP - Calling database class from another class
我最近在代码中遇到错误:
PHP Parse error: syntax error, unexpected '$connection' (T_VARIABLE), expecting function (T_FUNCTION) in
从我搜索过的问题来看,问题不在于之前未设置公共/私有/受保护,还是没有在构造函数中创建数据库连接。
数据库连接类代码:
class databaseConnection {
//Database information
protected $mysqliUser = "";
protected $mysqliHost = "localhost";
protected $mysqlipass = "";
protected $mysqlidbname = "";
public $con;
public function __construct() {
$this->con = new mysqli($this->mysqliHost,$this->mysqliUser,$this-
>mysqlipass,$this->mysqlidbname);
}
}
收到错误的类代码片段:
private $conn;
$conn = new databaseConnection;
非常感谢您为我指明正确的方向。
私有声明上方只是类创建类createSession
在这种情况下, $conn = new databaseConnection;
需要可见性,或者应该在方法中。 在不查看所有类和奇数缩进的情况下很难说出哪个。
因此,将其放在方法所属的方法中(也许是构造函数?),或将其设置为私有,受保护或公共(无论打算使用哪种方法)。
看一下这个。
真的行..
connect.php
class DBConnect {
private static $connection;
private static $host = "localhost";
private static $user = "root";
private static $pwd = "";
private static $dbname = "yourDBName";
public static function connect() {
$host = self::$host;
$user = self::$user;
$pwd = self::$pwd;
$dbname = self::$dbname;
self::$connection = new mysqli($host, $user, $pwd, $dbname) or die('Error connecting..');
return self::$connection;
}
}
myclass.php
require_once('connect.php');
class MyClass {
private $connObj;
public function __construct() {
$this->connObj = DBConnect::connect();
}
public function select() {
$conn = $this->connObj;
$sql = "SELECT * FROM table_name";
$query = $conn->query($sql);
$res = $query->fetch_assoc();
// your code..
}
}
$obj = new MyClass();
$obj->select();
希望,此代码段对您有效。 :) :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.