从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解(3)

对于多模块的情况,可以在 /application/route.php 中绑定默认模块路由(去掉上面的单模块绑定):
use think\Route;
Route::bind('index');
前台访问成功:

然后在/public/下新建一个入口文件admin.php,绑定后台模块admin,来访问后台:

<?php
// [ 应用入口文件 ]
namespace think;
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/base.php';
// 绑定当前入口文件到admin模块
Route::bind('admin');
// 关闭admin模块的路由
App::route(false);
// 执行应用
App::run()->send();
后台访问成功:

(修改后台地址只需修改这个文件名即可)
【返回数据】
配置文件中默认输出类型 default_return_type 为html:

直接打印输出字符串、数组,没什么特殊:
public function index()
{
$str = 'hello,world!';
$arr = array('state'=>1,'msg'=>'success');
//打印字符串
echo $str;
//打印数组
var_dump($arr);
}

返回json格式数据:
public function index()
{
$arr = array('state'=>1,'msg'=>'success');
return json($arr);
//返回其它状态码或响应头信息
//return json($arr, 201, ['Cache-control' => 'no-cache,must-revalidate']);
//xml格式
//return xml($arr);
}

(对于只做API开发的情况,可以设置default_return_type为json,直接return $arr即可返回json格式数据)
【渲染模板、分配数据】
如图建立视图层,index.html作为前台首页(内容为“这是首页”):
