В настоящее время я создаю небольшой проект с PHP, не используя статические методы или глобальное состояние.Зависимость впрыска в php?
Конструкторы моего класса в настоящее время немного похожи на это, я просто вставляю зависимые объекты при создании экземпляра объекта.
class Something {
public function __construct(Name\Space\Object $object, Other\Name\Space $object2)
{
# Assign properties here
}
}
В одном из классов моего приложения мне нужно создавать новые экземпляры различных объектов посредством вызова его методов. Что-то немного похожее ниже;
class Something {
public function getNewObject()
{
return new Name\Space\Object();
}
public function getNewObject2()
{
return new Name\Space\ObjectTwo();
}
}
Это как это сделать, если придерживаться стандартного правила инъекции зависимостей?
Я не уверен, как это сделать, как если бы я ввел объект в конструктор, тогда у меня будет только один экземпляр, тогда как мне может понадобиться много в моем приложении?
Спасибо,
Это выглядит круто, проведет испытание и сообщит вам, как я себя чувствую. Спасибо, это лучшее решение, чем мое. – SolarSync
Это решение действительно работает, просто передайте имя класса в конструктор, и вы хороши. Вы также можете переназначить класс во время выполнения, собирая свойство $ klass. –
Спасибо :) помог много – SolarSync