thinkphp6-响应

响应输出

路由直接返回

添加路由响应 route/app.php

Route::get('hello/:name', function ($name) {
    return 'Hello,' . $name . '!';
});

测试与结果

http://127.0.0.1:8000/hello/huyongjian
Hello,huyongjian!
控制器返回

控制器

<?php

namespace app\controller;

class Index
{
    public function index($name='thinkphp')
    {
        return 'hello '. $name;
    }
}

测试结果

http://127.0.0.1:8000/index?name=xiaoming
hello xiaoming
方法
输出类型    快捷方法    对应Response类
HTML输出    response    \think\Response
渲染模板输出    view    \think\response\View
JSON输出    json    \think\response\Json
JSONP输出    jsonp    \think\response\Jsonp
XML输出    xml    \think\response\Xml
页面重定向    redirect    \think\response\Redirect
附件下载    download    \think\response\File

响应参数

设置数据

json()->data($data);

设置状态码

json($data)->code(201);

设置头部信息

json($data)->code(201)->header([
    'Cache-control' => 'no-cache,must-revalidate'
]);

设置Cookie

response()->cookie('name', 'value', 600);

重定向

return redirect('http://www.thinkphp.cn');
return redirect((string) url('hello',['name' => 'think']));
<?php
namespace app\controller;

class Index
{
    public function index()
    {
        return redirect('/hello')->with('name','thinkphp');
    }

    public function hello()
    {
        $name = session('name');
        return 'hello,'.$name.'!';
    }    
}

文件下载

public function download()
    {
        // download是系统封装的一个助手函数
        return download('test.txt', 'text.txt');
    }
// 设置300秒有效期
        return download('image.jpg', 'my')->expire(300);
方法    描述
name    命名下载文件
expire    下载有效期
isContent    是否为内容下载
mimeType    设置文件的mimeType类型
force    是否强制下载(V6.0.3+)
posted @   胡勇健  阅读(299)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示