• 技术文章 >每日编程 >PHP知识

    怎么理解PHP代理模式

    藏色散人藏色散人2021-01-11 10:46:35原创3475
    本篇文章主要给大家用实例代码来详细介绍PHP代理模式

    在前面的文章中,我们已经给大家简单介绍了PHP代理模式的基础概念,相信大家对代理模式也有了一点了解。

    本节内容就结合具体的代码示例,给大家介绍PHP代理模式

    代码如下:

    <?php
    /*
     * 代理模式
     */
    
    //代理抽象接口
    interface shop
    {
        public function buy($title);
    }
    
    //原来的CD商店,被代理对象
    class CDShop implements shop
    {
        public function buy($title)
        {
            echo "购买成功,这是你的《{$title}》唱片" . PHP_EOL;
        }
    }
    
    //CD代理
    class Proxy implements shop
    {
        public function buy($title)
        {
            $this->go();
            $CDshop = new CDshop;
            $CDshop->buy($title);
        }
    
            public function go()
        {
            echo "跑去香港代购" . PHP_EOL;
        }
    }
    
    class client
    {
        public static function shoping($goods)
        {
            $proxy = new Proxy;
            $proxy->buy($goods);
        }
    }
    
    client::shoping("醒着做梦");

    首先代理模式都需要继承一个共用的接口,这里只有CDShop(CD商店)和Proxy (CD代理)这两个类来继承一个共用接口shop,并且其中都有一个共同的方法buy。

    那么上述代码我们可以这样理解,当我们想要购买一张“醒着做梦”的唱片,但是由于本地没有资源,只能选择香港代理帮忙代购。这里我们就可以通过客户端来实例化代理Proxy,再调用代理中的购买方法buy。

    然后代理可以通过go方法表示“跑去香港代购”,再new实例化CDshop,再通过其中buy方法来“购买唱片”。

    最后我们可以检查上述代码的返回值:

    4cce1c16e1fba8fe4f81e1a2c807134.png

    流程示意图:

    49cf7890eae19b82c2939596d66acc7.png

    如图,这就是代理模式的使用示例,只要掌握它的实现流程和原理,也就很容易理解代理模式的实现思想了,大家也可以在本地做多练习以便加固理解。

    本篇文章就是关于PHP代理模式的详细介绍,也很通俗易懂的,希望对需要的朋友有一定的帮助!

    以上就是怎么理解PHP代理模式的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:PHP代理模式
    上一篇:PHP代理模式是什么 下一篇:PHP如何过滤字符串中的空格
    大前端线上培训班

    相关文章推荐

    • php模式设计之 适配器模式,php模式设计适配器• php模式设计之 工厂模式,php模式设计工厂• php模式设计之 注册树模式,php模式设计• php模式设计之 单例模式,php模式设计• PHP代理模式详解及案例

    全部评论我要评论

  • 奔跑

    老师, 你好!比较想知道,这些设计模式,在我们实际运用当中,具体的有哪些运用,比如在电商中,或者在游戏开发中,谢谢老师

    2018-12-02

  • 取消发布评论发送
  • 1/1

    PHP中文网