在之前的文章《浅谈php中的责任链模式》中我们介绍了php中的责任链模式,下面本篇文章带大家了解一下php设计模式中的代理模式。

代理人这个职业在中国有另外一个称呼,房产经济人、保险经济人,其实这个职业在国外都是叫做房产代理或者保险代理。顾名思义,就是由他们来帮我们处理这些对我们大部分人来说都比较生疏的专业领域的工作。代理模式也是一样的道理,同时,在这篇文章中还会简单的介绍正向代理和反向代理是怎么回事。
GoF定义:为其它对象提供一种代理以控制对这个对象的访问
GoF类图
立即学习“PHP免费学习笔记(深入)”;

代码实现
interface Subject
{
public function Request();
}
class RealSubject implements Subject
{
function Request()
{
echo "真实的操作", PHP_EOL;
}
}
class Proxy implements Subject
{
private $realSubject;
public function __construct()
{
$this->realSubject = new RealSubject();
}
public function Request()
{
echo "代理的操作", PHP_EOL;
$this->realSubject->Request();
}
}
$proxy = new Proxy();
$proxy->Request();**
完整代码:https://github.com/zhangyue0503/designpatterns-php/blob/master/12.proxy/source/proxy.php
短信功能不能停,这回用简单的代理模式来增加一些前后的提示吧!
PHPCMS V9(后面简称V9)采用PHP5+MYSQL做为技术基础进行开发。V9采用OOP(面向对象编程)+ MVC设计模式,进行基础运行框架搭建。模块化开发方式做为功能开发形式。框架易于功能扩展,代码维护,优秀的二次开发能力,可满足所有网站的应用需求。 5年开发经验的优秀团队,在掌握了丰富的WEB开发经验和CMS产品开发经验的同时,勇于创新追求完美的设计理念,为全球多达10万网站提供助力,并
296
短信发送类图

完整源码:https://github.com/zhangyue0503/designpatterns-php/blob/master/12.proxy/source/proxy-msg.php
<?php
interface SendMessage
{
public function Send();
}
class RealSendMessage implements SendMessage
{
public function Send()
{
echo '短信发送中...', PHP_EOL;
}
}
class ProxySendMessage implements SendMessage
{
private $realSendMessage;
public function __construct($realSendMessage)
{
$this->realSendMessage = $realSendMessage;
}
public function Send()
{
echo '短信开始发送', PHP_EOL;
$this->realSendMessage->Send();
echo '短信结束发送', PHP_EOL;
}
}
$sendMessage = new ProxySendMessage(new RealSendMessage());
$sendMessage->Send();说明
原文地址:https://juejin.cn/post/6844903959988011016
作者:硬核项目经理
推荐学习:《PHP视频教程》
以上就是聊聊PHP中的代理模式(正向代理和反向代理)的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号