知识大全 PHP系列学习之AOP[2]
Posted 知
篇首语:知识为进步之母,而进步又为富强之源泉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 PHP系列学习之AOP[2]相关的知识,希望对你有一定的参考价值。
PHP系列学习之AOP[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
AOP 通知类型
通知代码我们可以用很多中方式表现 我之前提到 这些通知代码依赖你使用的框架 但是有些你需要熟悉的类型 请看下面
前通知 返回后通知 抛出后通知 周边通知
前通知
在你的代码中一些特殊点之前使用通知 正常是调用一个方法
迄今为止 为了简化概念和为了让你更快的理解你的代码 我经常把通知写到方法里 但是在真实的环境里 通知经常是不写在方法里的 应该有一个独立的控制器 每个方法都在这个控制器里 而且每个方法都包裹着AOP的功能 这个全局的控制器运行在整个系统里 而且对我们是不可见的
<?php
class PathController
function controlPaths($className $funcName)
Authentication::checkAuthentication()
$classObj = new $className()
$classObj >$funcName()
在这里假设有这么一个类 主要是用于给你展现这个类实际上发生了什么事情 假设那个controlPaths方法是应用中全局切入点 访问应用中的每个方法都需要通过这个方法访问 上面的方法中在执行每个方法之前 我们调用了通知checkAuthentication() 这就是前通知
返回后通知
这个通知在指定功能执行完后只执行一次 并且返回那个访问点 考虑下面的代码
<?php
class PathController
function controlPaths($className $funcName)
$classObj = new $className()
$classObj >$funcName()
Database::closeConnection()
注意这里 当方法完成之后 我们清理了数据库资源 在返回通知之后 我们调用这个通知
抛出后通知
如果在执行进程期间函数抛出异常 那么在抛出完异常之后应用通知 这里是抛出完异常之后 通知就变成错误提示
<?php
class PathController
function controlPaths($className $funcName)
try
$classObj = new $className()
$classObj >$funcName()
catch (Exception $e)
Error::reportError()
周边通知
第四种通知是周边通知 他是前通知和返回后通知的合并体
<?php
class PathController
function controlPaths($className $funcName)
Logger::startLog()
$classObj = new $className()
$classObj >$funcName()
Logger::endLog()
cha138/Article/program/PHP/201311/21641
相关参考
PHP系列学习之日期函数[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 通过字符获取时间戳
PHP系列学习之日期函数[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 介绍 PHP是一
JavaScript学习之代码解释 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz
JakartaStruts学习之实战演示 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Acti
SpringMVC学习之注解介绍 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! spring的注
JakartaStruts学习之应用实践 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文是三
家长督促孩子学习之余如何沟通尊敬的各位家长:大家好!今天,因为孩子,我们再次走到了一起,首先,对各位家长能在百忙之中抽出时间来参加这次家长会表示衷心的感谢!转眼间,我和您的孩子相处已有一个月了。在各位
ASP.NET学习之结构和类 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一class是引用类
ASP.NET学习之常用基础知识 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一公共变量和属性
C#学习之——认识C#的内部类 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C#中的内部类能够