StartMVC开发手册

可以快速上手的开发文档

控制器数据输出

数据输出

控制器中有多种方式进行数据输出。

变量传值给视图

    $this->assign();//可以传入变量,数组以及对象

 $data1="这是一个标题";
$this->assign('title',$data1);//可以传入变量
//模板中使用<?=$title?>输出<br>
$data2=array(
  'name'=>'小明',
  'age'=>18;
);

$this->assign($data2);//可以传入数组
//模板中使用<?=$name?> <?=$age?>输出

$this->assign('user',$data2);//可以传入数组
//模板中使用<?=$user['name']?> <?=$user['age']?>输出
<br>
$data3=array(
  array('name'=>'小明','age'=>18),
  array('name'=>'小红','age'=>16),
);
$this->assign('userlist',$data3);//可以传入多维数组
//模板中使用循环输出
<?php foreach($userlist as $v){?>
<?=$v['name']?>
<?=$v['age']?>
<?php }?><br>
$data4=(object)[];
$data4->a='项目1';
$data4->b='项目2';
$this->assign('obj',$data4);//可以传入对象
//模板中使用<?=$obj->a?> <?=$obj->b?>输出<br>

输出视图

$this->display();  //输出默认视图

$this->display($template); //输出模块内指定视图

$this->display( [$module, $template]); //输出指定模块的指定视图(实现跨模块视图共享)

 function indexAction(){
  $data = ['name' => '小明', 'age' => 18];
  $this->assign($data);
  $this->display(['home', 'page']);
}

//输出Home模块View目录中的page.php视图文件,并把$name = '小明',$age = 18传递给视图,并在runtime/temp目录中生成临时文件用于调试

* 更多视图使用方法参考【视图】章节

输出纯文本

$this->content($content);
// 将会以纯文本的格式输出内容


输出JSON

$this->json($data);  //输出Json对象字符串,data为数组或对象

 function indexAction(){
  $data = ['name' => '小明', 'age' => 18];
  $this->json($data);
}
//输出:{"name":"小明","age":18}


输出404(页面不存在)

$this->notFound();