Инъекция зависимости обычно (если не всегда) осуществляется через IoC
(инверсия контроля) - контейнер.Контейнер, или, вернее, его логика внедрения зависимостей, заботится о создании объектов и посредством некоторой магии извлекает все параметры, ожидаемые для добавления, и создает их, в том числе из логики внедрения зависимостей контейнеров.
То, что вы делаете, этоскорее просто создание новых объектов.Вы можете сделать это любым способом, но лично я, вероятно, пропущу представление через конструктор.
Если вы хотите узнать больше о внедрении зависимостей и контейнерах, id обратитесь к wiki запись об этом.
Вы также можете взглянуть на одну из моих наивных реализаций контейнера зависимостей, используя php размышления здесь , если хотите!