minor【 php框架】6.代理,minorphp框架代理
6.1 代理
Minor提供了一个类似于java中InvocationHandler接口和一个Proxy类的代理模式的实现,具体可参考我的这篇文章:http://www.cnblogs.com/orlion/p/5350752.html
6.1.1 使用
优六系统(全称:优六企服系统)是在Util6MIS基础上组合CMS等插件及子系统的综合信息化管理系统。 Util6MIS(软著全称:优六信息化管理框架系统)是一款免费的通用信息化快速开发框架,该框架可快速集成各类系统开发。 系统后台采用.NET6 + Layui作为UI支撑,操作界面简洁,项目结构清晰,功能模块化设计,支撑框架轻量高效,代码层级分离,注释完整,可快速重构,提高开发效率。
class FooController extends Controller { public function bar($productName) { $log = new LogHandler(); $shop = new Shop(); $shopProxy = Proxy::newProxyInstance($shop, $log); $shopProxy->buy($productName); } }
php namespace App\Lib; use Minor\Proxy\InvocationHandler; class LogHandler implements InvocationHandler { public function invoke($target, \ReflectionMethod $method, Array $args = []) { $this->before(); $result = $method->invokeArgs($target, $args); $this->after(); return $result; } public function before() { echo '[LogHandler] before
'; } public function after() { echo '[LogHandler] after
'; } }
php namespace App\Lib; class Shop { private $mail = null; public function boot(MailProvider $mail) { $this->mail = $mail; } public function buy($productName) { echo '[Shop] buy ' . $productName . '
'; !is_null($this->mail) && $this->mail->send('DemoUser'); } }
立即学习“PHP免费学习笔记(深入)”;










