我正在使用adLDAP插件(不是真的相关),并且有一个标准的PHP类。在这个类中有两个受保护的变量(admin user和admin password)。
我需要用parse_ini_file加载的.ini文件中的数据来声明这两个变量。我该怎么做呢?我不能让它工作。例子:
$ini_array = parse_ini_file("somefile");
// username comes like $ini_array["php_value ad.username"]
class someClass {
protected $adminUSER = "";
protected $adminPW = "";
}
这样使用setter:
class someClass
{
protected $adminUSER = "";
protected $adminPW = "";
public function setAdminUser($adminUser)
{
$this->adminUSER = $adminUser ;
}
public function setAdminPw($adminPW)
{
$this->adminPW= $adminPW;
}
}
$classInstance = new someClass();
$classInstance->setAdminUser('AdminUser');
$classInstance->setAdminPw('AdminPw');
如果你不能修改你的类,使用heritage:
class myClass extends someClass
{
public function __construct($adminUser, $adminPW)
{
$this->adminUSER = $adminUser ;
$this->adminPW= $adminPW;
}
}
$myInstance = new myClass('UserAdmin', 'Password);
或者heritage和setter…或者直接继承并读取构造函数中的配置:
class myClass extends someClass
{
public function __construct()
{
$ini_array = parse_ini_file("somefile");
$this->adminUSER = $ini_array['adminUser'] ;
$this->adminPW= $ini_array['adminPassword'];
}
}
然后调用你的新类,它应该是自动初始化的:
$myInstance = new myClass();