Heim > Backend-Entwicklung > PHP-Tutorial > [PHP-Lernen] Tägliche Verwendung von Kontrollumkehr und Abhängigkeitsinjektion

[PHP-Lernen] Tägliche Verwendung von Kontrollumkehr und Abhängigkeitsinjektion

little bottle
Freigeben: 2023-04-05 21:34:02
nach vorne
2280 Leute haben es durchsucht

In diesem Artikel erklärt Ihnen der Herausgeber die Verwendung von Inversion of Control und Dependency Injection in PHP. Wenn Sie interessiert sind, schauen Sie vorbei!

Inversion der Kontrolle: Die Kontrolle wird an Ihre eigene Klasse übergeben

Abhängigkeitsinjektion: abhängig von einer anderen Klasse, ich habe sie nicht manuell neu erstellt


<?php
/*我自己要用的类*/
class User {
	private $name;
	private $age;
	public function __construct($name,$age){
		$this->name=$name;
		$this->age=$age;
	}
    public static function createResource($conf) {
    	return new self($conf[&#39;name&#39;],$conf[&#39;age&#39;]);
    }
    public function says(){
    	echo $this->name;
    }
}

$conf=array(
	&#39;name&#39;=>&#39;taoshihan&#39;,
	&#39;age&#39;=>10
	);

/*把这个地方放到一个类里,它就是个容器的概念了*/
/*体现了控制反转,所有的操作都是我自己的类里面进行的处理,不需要在调用的时候处理*/
/*这里也体现了依赖注入,就是我不手动去new对象了,我是在下面的方法中获取的对象*/
$user=call_user_func_array(array(&#39;User&#39;, "createResource"), array($conf));

$user->says();
Nach dem Login kopieren

Verwandte Kurse: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt von[PHP-Lernen] Tägliche Verwendung von Kontrollumkehr und Abhängigkeitsinjektion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage