亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例

    本文將使用倆種設計模式和反射知識實現(xiàn)一個簡單的案例,把之前學習過的知識點進行簡單的融合串聯(lián)起來。

    五、融合設計模式和反射實現(xiàn)一個案例

    經(jīng)歷了九九八十一難終于來到了容器這一環(huán)節(jié),在這一環(huán)節(jié)我們先來實現(xiàn)一個自己的容器,將之前講解的單例模式、注冊樹模式、反射進行一個串聯(lián),從而進行加深印象和更好的理解。

    還記得之前在依賴注入里邊說過這樣一個方法dependency,這個方法就是進行了依賴注入,從而對代碼進行解耦。

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例但是這次呢!會使用容器來解決這一問題。

    首先先把需要的類定義好,這一個類就使用了單例模式和注冊樹模式,之前的文章沒有好好看的,一定要仔細看一下,否則后文會很難理解的。

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例
    在這里插入圖片描述

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例

    <?php
    /**
    * Created by PhpStorm.
    * User: 咔咔
    * Date: 2020/9/21
    * Time: 19:04
    */


    namespace container;


    class Container
    {
    /**
    * 存放容器
    * @var array
    */

    public $instances = [];

    /**
    * 容器的對象實例
    * @var array
    */

    protected static $instance;

    /**
    * 定義一個私有的構(gòu)造函數(shù)防止外部類實例化
    * Container constructor.
    */

    private function __construct() {

    }

    /**
    * 獲取當前容器的實例(單例模式)
    * @return array|Container
    */

    public static function getInstance ()
    {
    if(is_null(self::$instance)){
    self::$instance = new self();
    }

    return self::$instance;
    }

    public function set ($key,$value)
    {
    return $this->instances[$key] = $value;
    }

    public function get ($key)
    {
    return $this->instances[$key];
    }
    }

    為了方便以后查看方便,這里把每節(jié)的案例演示都放在對應的控制器中

    這里把之前的依賴注入的代碼移植過來,并且配置上注解路由進行訪問,看最終結(jié)果是否為Car方法返回的123

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例測試一下打印結(jié)果,一切ok

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例使用單例模式和注冊樹模式配合后修改的這份代碼

    修改后打印出其結(jié)果,同樣也是car返回的值123。

    在這里需要注意一下就是在同一個方法中set和get方法是不會共存的,這里只是為了給大家做一個演示寫到一起的。

    后邊在看容器源碼時就知道set和get方法到底是怎么使用的,這里只是讓大家體驗一下單例模式和注冊樹模式。

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例這里做一個小修改,修改上文中最后倆行代碼

    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例
    在這里插入圖片描述
    ThinkPHP容器之使用設計模式和反射實現(xiàn)一個簡單的案例
    在這里插入圖片描述

    堅持學習、堅持寫博、堅持分享是咔咔從業(yè)以來一直所秉持的信念。希望在偌大互聯(lián)網(wǎng)中咔咔的文章能帶給你一絲絲幫助。我是咔咔,下期見。

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號