• PHP依赖注入


    对于依赖注入 我现在的理解是把一个方法当成一个变量放进另一个方法的形参里

    复制代码
    <?php
    class Factory {
        public static function getDb(){
            return new Db();
        }
    }
    
    class Db {
        public static function query($sql){
            echo $sql;
        }
        public static function querys($sql){
            echo $sql."s";
        }
    }
    
    
    class example {
        private $_db;
        function getList(){
            $this->_db->query("123");//这里具体sql语句就省略不写了
        }
        //从外部注入db连接
        function setDb($connection){
            $this->_db = $connection;
        }
    }
    //调用
    $example = new example();
    $example->setDb(Factory::getDb());//注入db连接
    $example->getList();
    复制代码

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

     简单点

    复制代码
    <?php
    class email {
        public static function sendemail(){
            echo "发送邮件";
        }
    }
    
    class sms {
        public static function sendsms(){
            echo "发送短信";
        }
    }
    
    
    class example {
        private $_send;
        function setSend($send_function){
            $this->_send = $send_function;
        }
    }
    
    $example = new example();
    $example->setSend(sms::sendsms());
    复制代码

    example好比注册的类,注册成功后想发送短信就

    $example = new example();
    $example->setSend(sms::sendsms());

    想发送邮件就

    $example = new example();
    $example->setSend(email::sendemail())
  • 相关阅读:
    Codeforces Round #573 (Div. 2) C. Tokitsukaze and Discard Items
    Codeforces Round #573 (Div. 2) B
    练习2
    练习1
    上机练习4
    上机练习3
    上机练习1
    JAVA第一次作业
    es document的强制替换、创建、删除
    es 返回定制化的_source数据
  • 原文地址:https://www.cnblogs.com/liliuguang/p/8796566.html
Copyright © 2020-2023  润新知