天天看點

php 跨控制器調用,Thinkphp跨控制器調用

#### 同子產品(index子產品)

~~~

方法一:

//使用命名空間

//調用index子產品user控制器中的index方法

$model = new \app\index\controller\User;

echo $model->index();//user下的index方法

方法二:

//先引入

use app\index\controller\User;

$model = new User;

echo $model->index();

方法三:

//使用系統方法

$model = controller('User');

echo $model->index();

~~~

#### 調用其他子產品控制器方法,前台index子產品調用背景admin下面的控制器方法

~~~

方法一:

//使用命名空間

$model = new \app\admin\controller\Index;

echo $model->index();

方法二:

//使用引入

use \app\admin\controller\Index as AdminIndex;//注意控制器名重複要改别名

$model = new AdminIndex();

echo $model->index();

方法三:

//系統方法調用

$model = controller('admin/Index');

echo $model->index();

~~~

#### 調用同控制器的其他方法

~~~

例:

//fangfa方法調用test方法

public function fangfa(){

//方法一:

echo $this->test();

//方法二:

echo self::test();

//方法三:

echo Index::test();//Index控制器

//方法四:

echo action(' test');

}

~~~

#### 調用其他控制器方法與其他子產品方法

~~~

例:

public function fangfa(){

//調用同控制器的index方法

echo action('index');

//調用其他控制器index方法

echo action('User/index');

//調用其他子產品下的index方法

echo action('admin/Index/index');

}

~~~