我试图对此进行研究,但无法弄清楚。 (我是php类新手。)
我想做的是有一个查询数据库并设置公共(或静态?)变量作为结果的类,以便可以在代码的不同位置使用这些变量。 (而且我不必继续编写相同的代码。)这可能吗?
到目前为止,我没有引起任何错误,但返回的是空白:
class DAL {
static $db;
static function db_connect() {
if(!isset($db)) {
$config = parse_ini_file('../private/configdb-xampp.ini');
$db = mysqli_connect($config['servername'],$config['username'],$config['password'],$config['dbname']);
}
// If connection was not successful, handle the error
if($db === false) {
// Handle error
return mysqli_connect_error();
}
return $db;
}
static function getcon(){
return isset(self::$db) ? self::$db : self::db_connect();
}
}
class DBcontrol {
public $company;
public $currissue;
public function getDBcontrol() {
// Run query using stored database connection
$sql="select * from control";
$rscontrol = mysqli_fetch_assoc( mysqli_query(DAL::getcon(),$sql) );
$company = $rscontrol["companyname"];
$currissue = $rscontrol["currissue"];
}
}
我正在尝试通过以下方式访问结果:
$ctrl = new DBcontrol();
$ctrl->getDBcontrol();
echo "company = ".$ctrl->company."<br>";
echo "currissue = ".$ctrl->currissue."<br>";
但这只会返回“ company =”和一个空白。
任何帮助将不胜感激。谢谢。