从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作为前台首页(内容为“这是首页”):