每个url请求之后 增加_finish方法回调

浏览:556 发布日期:2017/07/07 分类:ThinkPHP5专区
\thinkphp_5.0.10\thinkphp\library\think\App.php
大概196行左右,修改\think\app类中invokeMethod方法:
将最后一行改为如下代码:/*[20170707 增加结束方法]
return $reflect->invokeArgs(isset($class) ? $class : null, $args);*/
##所有_开始的方法将不可以通过URL访问,提高安全性
if(substr($method[1],0,1) === '_')  throw new HttpException(404, 'method not exists:' . get_class($class) . '->' . $method[1] . '()');        
$return = $reflect->invokeArgs(isset($class) ? $class : null, $args);
if(is_callable([$class,'_finish'])){
    return $class->_finish();
}else{
    return $return ;
}
这样可以在每个请求完成一个执行一个function来完成更多逻辑
最佳答案
评论( 相关
后面还有条评论,点击查看>>