zoukankan      html  css  js  c++  java
  • 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())
  • 相关阅读:
    毕业考试
    相机标定
    深度相机
    怎么选工业相机
    Python Socket 编程
    Canoe 过滤Trace中报文
    Canoe 使用Replay Block CAN回放报文
    安装Jupyter Notebook
    Altium Designer PCB 画板框
    EMQX 取消匿名登录和添加、删除用户
  • 原文地址:https://www.cnblogs.com/liliuguang/p/8796566.html
Copyright © 2011-2022 走看看