Yii框架响应组件用法实例分析

2020-10-20 15:43:01 浏览数 (1)

本文实例讲述了Yii框架响应组件用法。分享给大家供大家参考,具体如下:

当我们的浏览器发送过来一个请求之后,在我们的操作里面对请求经过处理之后,我们的服务器也会把请求的结果打包成一个消息,然后把这个消息返还给浏览器,这个消息我们称之为响应。在我们的操作中,我们也可以对响应进行一些设置和处理。要处理我们的响应,我们需要先获得响应组件这个东西。

代码语言:javascript复制
$response = Yii::$app- response;

有了这个响应组件之后,我们可以对响应消息进行一些设置了,比如设置响应的状态码。

代码语言:javascript复制
$response- setStatusCode(404);
//两种方法都可以设置
$response- statusCode = '404';

这个时候我们再来访问时,会出现404的错误,打开开发者调试工具,在network选项下面也是可以看到404的状态码了

我们还可以添加一些头部信息

代码语言:javascript复制
//禁止浏览器缓存我们的消息
$response- headers- add("pragma","no-cache");

再次刷新后,我们就可以在头部信息中看到 pragma:no-cache的字样了,这个时候浏览器就不会缓存我们的消息。

同样我们也可以对头部信息进行修改

代码语言:javascript复制
//告诉浏览器收到我们的消息后把我们的消息缓存5秒钟
$response- headers- set("pragma","max-age=5");

刷新后,我们可以看到我们的pragma字段确实编程了max-age=5。 同样,我们还可以删除一些信息。

代码语言:javascript复制
$response- headers- remove("pragma");

http头部还有很多有意思的功能,比如文件下载

代码语言:javascript复制
$response- headers- add("content-disposition","attachment;filename='abc.jpg'");

在浏览器中刷新之后,我们可以看到浏览器下载了abc.jpg的文件。 下载文件这个功能很常用,所以在response中给我们包装了一个方法,sendFile

代码语言:javascript复制
$response- sendFile('./favicon.ico');

刷新后可以看到浏览器下载当前目录下的favicon.ico这个文件,如果文件不存在则会报错。

关于响应组件更多的使用方法可以参考我们的权威指南。

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

0 人点赞