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 相关文章推荐
多文件上传的例子
Oct 09 PHP
用Apache反向代理设置对外的WWW和文件服务器
Oct 09 PHP
PHP 文章中的远程图片采集到本地的代码
Jul 30 PHP
在Windows系统上安装PHP运行环境文字教程
Jul 19 PHP
php下网站防IP攻击代码,超级实用
Oct 24 PHP
分享PHP header函数使用教程
Sep 05 PHP
PHP将XML转数组过程详解
Nov 13 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
php生成随机数的三种方法
Sep 10 PHP
PHP利用APC模块实现大文件上传进度条的方法
Oct 29 PHP
php生成gif动画的方法
Nov 05 PHP
php中array_unshift()修改数组key注意事项分析
May 16 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
PHP 存取 MySQL 数据库的一个例子
2006/10/09 PHP
浅析PHP水印技术
2007/02/14 PHP
关于BIG5-HKSCS的解决方法
2007/03/20 PHP
php生成excel文件的简单方法
2014/02/08 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
2014/08/18 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
2016/06/21 PHP
jQuery1.6 使用方法二
2011/11/23 Javascript
javascript中JSON对象与JSON字符串相互转换实例
2015/07/11 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
微信小程序  wx.request合法域名配置详解
2016/11/23 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
整理关于Bootstrap警示框的慕课笔记
2017/03/29 Javascript
Vue.js仿Metronic高级表格(一)静态设计
2017/04/17 Javascript
angularjs过滤器--filter与ng-repeat配合有奇效
2017/04/20 Javascript
js canvas实现放大镜查看图片功能
2017/06/08 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
2018/12/09 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
Python中尝试多线程编程的一个简明例子
2015/04/07 Python
Python DataFrame.groupby()聚合函数,分组级运算
2018/09/18 Python
利用Python将数值型特征进行离散化操作的方法
2018/11/06 Python
python批量爬取下载抖音视频
2019/06/17 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
2020/02/07 Python
使用anaconda安装pytorch的实现步骤
2020/09/03 Python
python 利用openpyxl读取Excel表格中指定的行或列教程
2021/02/06 Python
Casadei卡萨蒂官网:意大利奢侈鞋履品牌
2017/10/28 全球购物
2019史上最全Database工程师题库
2015/12/06 面试题
大一自我鉴定范文
2013/10/04 职场文书
教师个人自我鉴定
2014/02/08 职场文书
2014国庆节商场促销活动策划方案
2014/09/16 职场文书
团委工作总结2015
2015/04/02 职场文书
2016年三八节红领巾广播稿
2015/12/17 职场文书
Python WSGI 规范简介
2021/04/11 Python
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS
golang 语言中错误处理机制
2021/08/30 Golang
SpringBoot中获取profile的方法详解
2022/04/08 Java/Android