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里的JS打印函数
Oct 09 PHP
用PHP实现维护文件代码
Jun 14 PHP
php数据库密码的找回的步骤
Jan 12 PHP
解析thinkphp基本配置 convention.php
Jun 18 PHP
IIS安装Apache伪静态插件的具体操作图文
Jul 01 PHP
php cookie使用方法学习笔记分享
Nov 07 PHP
PHP生成图片验证码、点击切换实例
Jun 25 PHP
在Nginx上部署ThinkPHP项目教程
Feb 02 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
PHP中iconv函数知识汇总
Jul 02 PHP
PHP双向链表定义与用法示例
Jan 31 PHP
PHP实现提取多维数组指定一列的方法总结
Dec 04 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
javascript 在firebug调试时用console.log的方法
2012/05/10 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
JQuery实现Ajax加载图片的方法
2015/12/24 Javascript
jquery插件jquery.dragscale.js实现拖拽改变元素大小的方法(附demo源码下载)
2016/02/25 Javascript
JavaScript 拖拽实例代码
2016/09/21 Javascript
JavaScript操作文件_动力节点Java学院整理
2017/06/30 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
JavaScript体验异步更好的解决办法
2018/01/08 Javascript
在vue项目中引入highcharts图表的方法(详解)
2018/03/05 Javascript
vue实现pdf导出解决生成canvas模糊等问题(推荐)
2018/10/18 Javascript
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
Layui实现主窗口和Iframe层参数传递
2019/11/14 Javascript
通过实例了解Nodejs模块系统及require机制
2020/07/16 NodeJs
Nodejs实现微信分账的示例代码
2021/01/19 NodeJs
提升Python程序运行效率的6个方法
2015/03/31 Python
在Python中编写数据库模块的教程
2015/04/29 Python
python中__slots__用法实例
2015/06/04 Python
Python Tkinter模块实现时钟功能应用示例
2018/07/23 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
python3.6 如何将list存入txt后再读出list的方法
2019/07/02 Python
一行Python代码制作动态二维码的实现
2019/09/09 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
一文带你掌握Pyecharts地理数据可视化的方法
2021/02/06 Python
HTML5 预加载让页面得以快速呈现
2013/08/13 HTML / CSS
戴尔英国官网:Dell英国
2017/05/27 全球购物
Kivari官网:在线购买波西米亚服装
2018/10/29 全球购物
财务会计毕业生自荐信
2013/11/02 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
航空学院求职信
2014/06/11 职场文书
财务统计员岗位职责
2015/04/14 职场文书
刑事附带民事代理词
2015/05/25 职场文书
《游戏公平》教学反思
2016/02/20 职场文书
Mysql 性能监控及调优
2021/04/06 MySQL
小米11和iphone12哪个值得买?小米11对比iphone12评测
2021/04/21 数码科技
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python
Go语言基础切片的创建及初始化示例详解
2021/11/17 Golang