调用控制器

调用其他控制器

在控制器内直接使用 new 关键字实例化其他控制器类即可完成对其他控制器的调用

演示代码

在 index 控制器内调用 test 控制器并执行其 runme 方法 :

test.php 源码

<?php
class testController extends grace{
    public function runme(){
        echo 'test controller is runnig ...';
        p($this->gets);
    }
}

index.php 源码

// 演示在 index 控制器的 demo 方法内调用 test控制器的 runme 方法
class indexController extends grace{
    public function demo(){
        // 调用 test 控制器
        $testController = new testController();
        // 设置 gets 数据
        $testController->gets = array(1,2,3,'test...');
        $testController->runme();
    }	
}

相关说明

控制器之间调用时不会自动调用被调用控制器对应的视图,如果需要调用请使用 $this->display('视图路径') 方式调用;

<?php
class indexController extends grace{
    public function demo(){
        // 调用 test 控制器
        $testController = new testController();
        // 设置 gets 数据
        $testController->gets = array(1,2,3,'test...');
        $testController->runme();
        $testController->display('test/index.php');
    }
}