php-Yii 2是否有AOP?

我想知道每个动作要执行多少时间.最简单/正确的方法是使用AOP.

我想要这样的东西:

/**
 * @FLOW3\Before("method(.*->action.*())")
 */
 public function markFirstTiMetag() {
// Do something here.
 }

 ...

 /**
 * @FLOW3\After("method(.*->action.*())")
 */
 public function markSecondTiMetag() {
// Do something here.
 }

我读到了FLOW3和我喜欢的这个框架.但这本身就是一个全栈框架.

是否为Yii 2实现了AOP模式?

我将非常感谢您提供的信息.谢谢大家.

解决方法:

我通常使用Logging来分析我的代码.

Yii::trace('starting some event');
foreach(..)
{
    ...
}
Yii::trace('some event done');

可以在调试栏的“日志”部分中找到此跟踪.

可以与beforeAction()afterAction()结合使用(未经测试)

public function beforeAction($action)
{

    if (!parent::beforeAction($action)) {
        return false;
    }

    Yii::trace($action->id.' started');

    return true; // or false to not run the action
}

public function afteraction($action, $result)
{
    $result = parent::afteraction($action, $result);
    Yii::trace($action->id.' ended');
    return $result;
}

我还在文档中找到了Performance Profiling,但是我没有尝试任何解决方案.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...