国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

關于PHP的依賴倒置(Dependency Injection)

2020-03-22 19:54:54
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP依賴倒置(Dependency Injection)代碼實例本文只提供實現代碼,需要的朋友可以參考下

實現類:

 ?phphtml' target='_blank'>class Container protected $setings = array(); public function set($abstract, $concrete = null) if ($concrete === null) { $concrete = $abstract; $this- setings[$abstract] = $concrete; public function get($abstract, $parameters = array()) if (!isset($this- setings[$abstract])) { return null; return $this- build($this- setings[$abstract], $parameters); public function build($concrete, $parameters) if ($concrete instanceof Closure) { return $concrete($this, $parameters); $reflector = new ReflectionClass($concrete); if (!$reflector- isInstantiable()) { throw new Exception( Class {$concrete} is not instantiable  $constructor = $reflector- getConstructor(); if (is_null($constructor)) { return $reflector- newInstance(); $parameters = $constructor- getParameters(); $dependencies = $this- getDependencies($parameters); return $reflector- newInstanceArgs($dependencies); public function getDependencies($parameters) $dependencies = array(); foreach ($parameters as $parameter) { $dependency = $parameter- getClass(); if ($dependency === null) { if ($parameter- isDefaultValueAvailable()) { $dependencies[] = $parameter- getDefaultValue(); } else { throw new Exception( Can not be resolve class dependency {$parameter- name}  } else { $dependencies[] = $this- get($dependency- name); return $dependencies;}

實現實例:

 ?phprequire container.php 
獨孤九賤(5)_ThinkPHP5視頻教程

ThinkPHP是國內最流行的中文PHP開發框架,也是您Web項目的最佳選擇。《VeVb.com獨孤九賤(5)-ThinkPHP5視頻教程》課程以ThinkPHP5最新版本為例,從最基本的框架常識開始,將...

Peter-Zhu 2017-05-16 12:03:57


獨孤九賤(4)_PHP視頻教程

江湖傳言:PHP是世界上最好的編程語言。真的是這樣嗎?這個梗究竟是從哪來的?學會本課程,你就會明白了。PHP 出品的PHP入門系統教學視頻,完全從初學者的角度出發,絕不玩虛的,一切以實用、有用...

Peter-Zhu 2017-03-20 22:47:17


獨孤九賤(1)_HTML5視頻教程

《VeVb.com原創html5視頻教程》課程特色:php 原創幽默段子系列課程,以惡搞,段子為主題風格的php視頻教程!輕松的教學風格,簡短的教學模式,讓同學們在不知不覺中,學會了HTML知識。...

Peter-Zhu 2017-03-13 10:15:11


ThinkPHP5實戰之[教學管理系統]

本套教程,以一個真實的學校教學管理系統為案例,手把手教會您如何在一張白紙上,從零開始,一步一步的用ThinkPHP5框架快速開發出一個商業項目。

Peter-Zhu 2017-07-24 16:48:56


PHP入門視頻教程之一周學會PHP

所有計算機語言的學習都要從基礎開始,《PHP入門視頻教程之一周學會PHP》不僅是PHP的基礎部分更主要的是PHP語言的核心技術,是學習PHP必須掌握的內容,任何PHP項目的實現都離不開這部分的內容,通...

PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赣榆县| 淅川县| 鲜城| 淄博市| 滕州市| 南部县| 平凉市| 都兰县| 无锡市| 无极县| 青川县| 介休市| 荥阳市| 黄浦区| 龙口市| 四子王旗| 沙洋县| 上思县| 望城县| 威信县| 亚东县| 三穗县| 射洪县| 建阳市| 娱乐| 巴东县| 穆棱市| 雷波县| 故城县| 高安市| 光山县| 澄迈县| 思南县| 扎鲁特旗| 兴和县| 通榆县| 喀什市| 乐至县| 图们市| 永登县| 宜兴市|