У меня есть что-то вроде этого
class Demo
{
public function __construct()
{
}
}
и мне нужно передать набор параметров (до 20) в демонстрационный класс (имя, адрес электронной почты, адрес и т. Д.).
ОтНасколько я знаю, есть 2 способа сделать это:
первый путь - передать массив:
$params = array('name' => 'test', 'email' => 'test' ... );
$demo = new Demo($params);
, затем изменить конструктор на __conctruct ($ data).
Второй способ - создать сеттер для каждого параметра, поэтому мы делаем что-то вроде этого:
$demo = new Demo();
$demo->setName('test');
$demo->setEmail('test@test.com');
Какой из них лучше?Второй способ требует много печатать, но я думаю, что он следует принципам ООП.Есть ли другой способ установки параметров?
Редактировать: конечно, мы можем передавать параметры напрямую $ demo = new Demo ('test', 'test@test.com' ...), но вам нужно знатьпорядок параметров, которые могут быть проблемой.