소프트웨어 개발에는 웹사이트 구매와 유사한 기능을 제공할 수 있는 디자인 패턴도 있습니다. 어떤 이유로 인해 클라이언트는 객체 에 직접 액세스하는 것을 원하지 않거나 액세스할 수 없습니다. 이때 이 솔루션에 해당하는 디자인 패턴 을 이라고 합니다. 프록시 패턴
은 객체에 대한 프록시 또는 자리 표시자를 제공하고, 프록시 객체는 원본 객체에 대한 액세스를 제어합니다
<?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("醒着做梦");
프록시 패턴은 일반적으로 사용되는 구조 설계 패턴 중 하나입니다. 객체에 대한 간접 접근을 제어할 수 있는 디자인 패턴은 경험이 있거나 기초가 탄탄한 사람이 보기에 적합합니다.
16php 프록시 모드
위 내용은 PHP 디자인 패턴의 프록시 패턴에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!