Я бы предпочел создать конкретный интерфейс с параметрами конфигурации, которые вы хотите использовать.Т.е.,
public function __construct($someConfigValue, $anotherConfigValue)
{
$this->_configValue1 = $someConfigValue;
$this->_configValue2 = $anotherConfigValue;
}
Однако, если вы ожидаете много разных конфигураций, вам, вероятно, лучше передать ему массив.
public function __construct($config)
{
$this->_configValue1 = $config['someConfigValue'];
$this->_configValue2 = $config['someConfigValue'];
}
Причина, по которой я рекомендую этоОн переносит ответственность за загрузку конфигураций за пределы класса (что, как я полагаю, ваш класс не имеет никакого отношения к загрузке конфигурации внутри себя) и создает более логичный интерфейс.Кроме того, он отделяет файлы конфигурации непосредственно от вашего класса.