当前位置: 代码迷 >> PHP >> 容易的php aop
  详细解决方案

容易的php aop

热度:56   发布时间:2016-04-28 23:14:26.0
简单的php aop
对比之下,感觉比spring aop简单易懂。

<?php //应用程序中某个业务逻辑类 class BIZ {     public function foobar()     {         echo '业务逻辑<br />';     } } //业务逻辑类的包装类 class AOP {     private $instance;     public function __construct($instance)     {         $this->instance = $instance;     }     public function __call($method, $argument)     {         if(! method_exists($this->instance, $method))         {             throw new Exception('未定义的方法:' . $method);         }         echo '权限检查<br />';         $callBack = array($this->instance, $method);         $return = call_user_func_array($callBack, $argument);         echo '日志记录<br />';         return $return;     } } //工厂方法 class Factory {     public function getBizInstance()     {         return new AOP(new BIZ());     } } //客户端调用演示 header("Content-Type: text/html; charset=gbk"); try {     $obj = Factory::getBizInstance();     $obj->foobar(); } catch(Exception $e) {     echo 'Caught exception: ',  $e->getMessage(); } ?>屏幕显示:权限检查业务逻辑日志记录


http://blog.163.com/lgh_2002/blog/static/44017526201052563459/
  相关解决方案