Yii 框架控制器创建使用及控制器响应操作示例


Posted in PHP onOctober 14, 2019

本文实例讲述了Yii 框架控制器创建使用及控制器响应操作。分享给大家供大家参考,具体如下:

Yii 框架控制器创建使用

在根目录下的controllers目录下创建控制器HelloController.php:

<?php
namespace app\controllers;
use yii\web\Controller;
class HelloController extends Controller{
  //方法必须以action开头
  public function actionIndex(){
    echo 'hello';
  }
}

访问地址:basic/web/index.php?r=hello/index

参数r后边跟控制器名字/方法名字。

如果需要传递参数:

<?php
namespace app\controllers;
use yii\web\Controller;
class HelloController extends Controller{
  //方法必须以action开头
  public function actionIndex(){
    $request = \YII::$app->request;
    $id = $request->get('id','');//第二个参数是如果没有传递怎么处理
    echo 'hello,id=' . $id;
    //判断是否是get或post请求
    if($request->isGet){
      echo 'get';
    }
    if($request->isPost){
      echo 'post';
    }
    //获取用户地址
    echo $request->userIP;
  }
}

Yii 框架控制器响应

public function actionIndex(){
    //控制器响应处理
    $res = \Yii::$app->response;
    //设置状态码
//    $res->statusCode = '404';
    //设置header头
//    $res->headers->add('pragma','no-cache');//增加
//    $res->headers->set('pragma','max-age=5');//修改
//    $res->headers->remove('pragma');//删除
    //跳转
    //方法一
//    $res->headers->add('location','http://www.baidu.com');
    //方法二
//    $this->redirect('http://www.baidu.com');
    //文件下载
    //方法一
//    $res->headers->add('content-disposition','attachment;filename=a.jpg');
     //方法二
//    $res->sendFile('./robots.txt');
  }

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

PHP 相关文章推荐
php在线生成ico文件的代码
Oct 09 PHP
php中用socket模拟http中post或者get提交数据的示例代码
Aug 08 PHP
php获取文章上一页与下一页的方法
Dec 01 PHP
PHP rsa加密解密使用方法
Apr 27 PHP
PHP编程中尝试程序并发的几种方式总结
Mar 21 PHP
PHP数据库编程之MySQL优化策略概述
Aug 16 PHP
PHP实现的AES双向加密解密功能示例【128位】
Sep 03 PHP
laravel获取不到session的三种解决办法【推荐】
Sep 16 PHP
php实现银联商务公众号+服务窗支付的示例代码
Oct 12 PHP
让whoops帮我们告别ThinkPHP6的异常页面
Mar 02 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
May 02 PHP
PHP中的异常处理机制深入讲解
Nov 10 PHP
Laravel 登录后清空COOKIE的操作方法
Oct 14 #PHP
Yii框架Session与Cookie使用方法示例
Oct 14 #PHP
laravel 修改记住我功能的cookie保存时间的方法
Oct 14 #PHP
解决laravel session失效的问题
Oct 14 #PHP
Yii框架视图、视图布局、视图数据块操作示例
Oct 14 #PHP
laravel 5.3 单用户登录简单实现方法
Oct 14 #PHP
在laravel5.2中实现点击用户头像更改头像的方法
Oct 14 #PHP
You might like
js实现select组件的选择输入过滤代码
2014/10/14 Javascript
Javascript非构造函数的继承
2015/04/27 Javascript
在Python中使用glob模块查找文件路径的方法
2015/06/17 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
2015/09/20 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
jQuery+CSS3+Html5实现弹出层效果实例代码(附源码下载)
2016/05/16 Javascript
SWFUpload多文件上传及文件个数限制的方法
2016/05/31 Javascript
AngularJs页面筛选标签小功能
2016/08/01 Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
2016/08/09 Javascript
Javascript基础回顾之(一) 类型
2017/01/31 Javascript
React-Native中props具体使用详解
2017/09/04 Javascript
基于vue cli重构多页面脚手架过程详解
2018/01/23 Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
2018/06/14 Javascript
react中使用css的7中方式(最全总结)
2019/02/11 Javascript
[54:53]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第二场
2014/05/23 DOTA
[00:37]食人魔魔法师轮盘吉兆顺应全新至宝将拥有额外款式
2019/12/19 DOTA
仅用50行代码实现一个Python编写的计算器的教程
2015/04/17 Python
Python中异常重试的解决方案详解
2017/05/05 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
Django配置celery(非djcelery)执行异步任务和定时任务
2018/07/16 Python
Python、 Pycharm、Django安装详细教程(图文)
2019/04/12 Python
python字典改变value值方法总结
2019/06/21 Python
python命令行参数用法实例分析
2019/06/25 Python
python kafka 多线程消费者&amp;手动提交实例
2019/12/21 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
详解css3中的伪类before和after常见用法
2020/11/17 HTML / CSS
德国自行车商店:Tretwerk
2019/06/21 全球购物
Java Servlet的主要功能和作用是什么
2014/02/14 面试题
大学生个人求职口试自我评价
2014/02/16 职场文书
英文慰问信
2015/02/14 职场文书
安全保证书怎么写
2015/02/28 职场文书
平凡的世界读书笔记
2015/06/25 职场文书
重温经典:乔布斯在斯坦福大学的毕业演讲(双语)
2019/08/26 职场文书
只用40行Python代码就能写出pdf转word小工具
2021/05/31 Python
Win11无法访问设备和打印机 如何解决页面空白
2022/04/09 数码科技