IoC(Inversion of Control)는 컴퓨터 코드 간의 결합을 줄이는 데 사용할 수 있는 객체 지향 프로그래밍의 설계 원칙입니다. 가장 일반적인 방법은 DI(종속성 주입)입니다.
구성을 통해 종속성 인터페이스 구현을 변경하는 것도 종속성 주입의 가장 기본이자 핵심 기능입니다#🎜 🎜 #
싱글톤, 스레드당 하나, 요청당 하나 등 종속 구현의 인스턴스 범위를 유연하게 제어합니다.
#🎜 🎜 #종속 매개변수, 종속 종속성 관리코드가 더 간결해지고 로직이 더 명확해졌습니다
모의 테스트에 편리함
(추천 학습 : PHP 프로그래밍 입문부터 숙달까지 ) 일반적으로 애플리케이션에 있는 펑션 블록을 함수 블록, 클래스 간 종속성은 통합 프레임워크를 통해 중앙에서 관리됩니다.
종속성 주입의 간단한 예#🎜 🎜#보세요. 다음 코드에서:
<?php
class Container {
private $s=array();
function __set($k, $c) { $this->s[$k]=$c; }
function __get($k) { return $this->s[$k]($this); }
}
<?php class A { private $container; public function __construct(Container $container) { $this->container = $container; } public function doSomeThing() { //do something which needs class B $b = $this->container->getB(); //to do } }
$c = new Container(); $c->setB(new B());
$c = new Container(); $c->setB(function (){ return new B(); });
위 내용은 PHP 종속성 주입의 용도는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!