PHPProxy modeSample code sharing
<?php // 代理模式 function echoLine($msg) { echo $msg, '<br/>'; } interface Sourceable { function method(); } // 被代理对象 class Source implements Sourceable { public function method() { echoLine('call method'); } } // 代理对象 class Proxy implements Sourceable { private $sourceable = null; // 代理关系在编译时确定 public function construct() { $this->sourceable = new Source(); } // 动态设置代理对象 public function setTarget(Sourceable $s) { $this->sourceable = $s; } public function method() { echoLine('before proxy!'); $this->sourceable->method(); echoLine('after proxy!'); } } // test code $proxy = new Proxy(); $proxy->method(); $s = new Source(); $proxy->setTarget($s); $proxy->method();
The above is the detailed content of Sample code sharing of PHP proxy mode. For more information, please follow other related articles on the PHP Chinese website!