新建控制器的结构应该为(以index为例):application->index->controller->Index.php。在application文件下新建模块文件,新建controller文件,新建控制器文件。
<?php
// 典型的控制器
// 控制器类文件的实际位置为:application\index\controller\Index.php
// 命名空间默认以app为根命名空间,也可在application->config文件中修改:'app_namespace'=>'application'
namespace app\index\controller;
use think\Controller;
class Index extends Controller{//类名与文件名一致
public function index(){
return 'index';
}
}
若定义类时,没有继承controller类,可直接使用助手函数进行模板渲染
namespace app\index\controller;
class Index{
public function index(){
return view('index');
}
}
调用think\view类,使用view中的fetch方法进行模板渲染
namespace app\index\controller;
// 引入命名空间为view的文件
use think\View;
class Index{
public function index(){
$view = new View();//实例化引入的view类
return $view->fetch('index');//调用view类中的fetch方法
}
继承了controller类时,就可以直接调用think\view类的方法
namespace app\index\controller;
use think\Controller;
class Index extends Controller{
public function index(){
return $this->fetch('index');//渲染输出app\index\view\index\index.html文件
}