thinkphp AOP(面向切面编程)

AOP:

在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。.......百度百科

AOP大概意思指:在程序需要扩展时,不该动原本的代码

在thinkphp中实现类似java的AOP可以使用“行为”。

首先需要知道“切面”,在thinkphp 中称为标签。即在代码的某个位子加入一个标签,这个标签代表执行一个或多个操作,thinkphp也提供了几个标签,如下:

此外,在代码中使用函数tag()可以自定义标签

定义完标签后,就可以定义行为类,如下

然后在CommonConf ags.php(没有则新建)文件中为标签绑定行为

这样就实现了类似于java的AOP了

 
 
转:
http://blog.csdn.net/jiahey/article/details/51926139
原文地址:https://www.cnblogs.com/kenshinobiy/p/7685798.html