时间:2021-07-01 10:21:17 帮助过:27人阅读
给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问

<?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);
}
}
//许多年后你想买张 醒着做梦 找不到CD商店了,和做梦似的,不得不找了个代理去香港帮你代购。
client::shoping("醒着做梦");代理模式是常用的结构型设计模式之一,它为对象的间接访问提供了一个解决方案,可以对对象的访问进行控制,设计模式适合有经验或者基础良好的人群去看
相关推荐:
PHP代理模式的示例代码分享
16php代理模式
星际争霸之php代理模式
以上就是PHP设计模式之代理模式详解的详细内容,更多请关注Gxl网其它相关文章!