基类控制器添加代码如下:
public function init(){
parent::init();
$scriptUrl = Yii::$app->request->scriptUrl;
if(YII_DEBUG&&YII_ENV=='dev'&&strpos($scriptUrl,'xhprof')){
$this->on(self::EVENT_BEFORE_ACTION,'xhprofStart');
$this->on(self::EVENT_AFTER_ACTION,'xhprofEnd');
}
}
入口文件添加代码如下:
function xhprofStart(){
xhprof_enable();
}
//尾部
function xhprofEnd($event){
$xhprof_data = xhprof_disable();
$xhprof_root = '/mnt/www/mxhy/backend/web/';
include_once $xhprof_root."xhprof_lib/utils/xhprof_lib.php";
include_once $xhprof_root."xhprof_lib/utils/xhprof_runs.php";
$xhprof_runs = new XHProfRuns_Default();
$route = $event->action->controller->route;
$run_id = $xhprof_runs->save_run($xhprof_data, $route);
echo '统计<br>';
$domain = $_SERVER['SERVER_NAME'];
$url = "http://".$domain."/xhprof_html/index.php?run=$run_id&source=$route";
echo '<a target="_blank">'.$url.'</a>';
}