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出错界面
Oct 09 PHP
mysql+php分页类(已测)
Mar 31 PHP
一步一步学习PHP(5) 类和对象
Feb 16 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
Apr 22 PHP
非常实用的php弹出错误警告函数扩展性强
Jan 17 PHP
php生成随机数的三种方法
Sep 10 PHP
php判断用户是否手机访问代码
Jun 08 PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 PHP
laravel5环境隐藏index.php后缀(apache)的方法
Oct 12 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
Apr 07 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
PHP5在Apache下的两种模式的安装
2006/09/05 PHP
php4的session功能评述(二)
2006/10/09 PHP
php中的strpos使用示例
2014/02/27 PHP
phpQuery让php处理html代码像jQuery一样方便
2015/01/06 PHP
PHP自定义函数格式化json数据示例
2016/09/14 PHP
PHP 500报错的快速解决方法
2016/12/14 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
javascript实现tabs选项卡切换效果(扩展版)
2013/03/19 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
一个JavaScript函数把URL参数解析成Json对象
2014/09/24 Javascript
JS选项卡动态替换banner图片路径的方法
2015/05/11 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
jQuery基础知识点总结(必看)
2016/05/31 Javascript
基于vue的fullpage.js单页滚动插件
2017/03/20 Javascript
详解nodejs微信公众号开发——6.自定义菜单
2017/04/13 NodeJs
JS中利用FileReader实现上传图片前本地预览功能
2018/03/02 Javascript
在webstorm开发微信小程序之使用阿里自定义字体图标的方法
2018/11/15 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
jQuery HTML设置内容和属性操作实例分析
2020/05/20 jQuery
Vue实现todo应用的示例
2021/02/20 Vue.js
[44:37]完美世界DOTA2联赛PWL S3 Forest vs access 第一场 12.11
2020/12/13 DOTA
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
python opencv实现旋转矩形框裁减功能
2018/07/25 Python
python爬虫之验证码篇3-滑动验证码识别技术
2019/04/11 Python
python实现DEM数据的阴影生成的方法
2019/07/23 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
Gina Bacconi官网:吉娜贝康尼连衣裙和礼服
2018/04/24 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
How TDD works
2012/09/30 面试题
大学生个人自荐信样本
2014/03/02 职场文书
公关活动策划方案
2014/05/25 职场文书
作风年建设汇报材料
2014/08/14 职场文书
2014年英语教研组工作总结
2014/12/06 职场文书
餐馆开业致辞
2015/08/01 职场文书
Go语言操作数据库及其常规操作的示例代码
2021/04/21 Golang
Ruby处理YAML和json数据
2022/04/18 Ruby