这是我的代码
<?php
class Connection
{
function __construct()
{
if(isset($_SERVER['SERVER_NAME']))
{
switch($_SERVER['SERVER_NAME'])
{
case 'www.hashstar.com':
$this->default = $this->dev;
break;
case 'www.hashstar.in':
$this->default = $this->prod;
break;
}
}
else
{
$this->default = $this->dev;
}
}
public $dev = array(
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'dbname',
);
public $prod = array(
'host' => 'localhost',
'login' => 'db_admin',
'password' => 'Admin@.2017',
'database' => 'db_main',
);
public function establish_connection()
{
$connection = new mysqli($this->host, $this->user, $this->pass, $this->db);
if($connection == TRUE)
{
return $connection;
}
else
{
die("Could Not Establish Connection! ".$connection->error);
}
}
}
?>
这段代码的问题在于我在这里宣布varaibles 1st为离线而2nd为for online因为我使用git我必须在推送到master分支之前一次又一次地更改代码。我甚至尝试使用.gitignore功能,但它也没有工作,但我仍然想根据服务器主机动态设置变量。
我已经尝试过使用switch case的东西,但它在编译时会出现语法错误。任何人都可以帮助mw使用此代码。
任何帮助表示赞赏。
答案 0 :(得分:0)
将您的数据库凭据设置为一个新文件,然后将其添加到.gitignore中,如下所示:
$dbConfig = array(
"host" => "localhost",
...
)
然后只需访问Connection类中的$ dbConfig