我正在尝试使用环境变量来设置我们的数据库机密。它们在一个类中定义。复制到这里。我得到了:
解析错误:语法错误,意外的“意外的'$ _SERVER'”
不允许使用变量。
有什么办法可以使我丢失吗?
builder.setCloseButtonIcon(bitmapFromDrawable(this, R.drawable. ic_arrow_back_white_24dp));
答案 0 :(得分:2)
我认为最好的方法是使用__construct
方法并像这样填充变量:
class DATABASE_CONFIG {
public $default = [];
public function __construct(){
$this->default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => $_SERVER['DB_DEFAULT_HOST'],
'login' => $_SERVER['DB_DEFAULT_LOGIN'],
'password' => $_SERVER['DB_DEFAULT_PASSWORD'],
'database' => $_SERVER['DB_DEFAULT_DATABASE'],
'prefix' => ''
//'encoding' => 'utf8',
);
}
}
答案 1 :(得分:1)
不幸的是,这是无效的语法。如注释中所指出的,在__construct()
中分配它。最好的方法是将变量作为参数传递。
class DATABASE_CONFIG {
public $default;
public function __construct($default)
{
$this->default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => $default['DB_DEFAULT_HOST'],
'login' => $default['DB_DEFAULT_LOGIN'],
'password' => $default['DB_DEFAULT_PASSWORD'],
'database' => $default['DB_DEFAULT_DATABASE'],
'prefix' => ''
//'encoding' => 'utf8',
);
}
}
// Usage
$foo = new DATABASE_CONFIG($_SERVER);