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

2020-10-20 14:49:59 浏览数 (1)

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

Yii 框架控制器创建使用

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

代码语言:javascript复制
<?php
namespace appcontrollers;
use yiiwebController;
class HelloController extends Controller{
  //方法必须以action开头
  public function actionIndex(){
    echo 'hello';
  }
}

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

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

如果需要传递参数:

代码语言:javascript复制
<?php
namespace appcontrollers;
use yiiwebController;
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 框架控制器响应

代码语言:javascript复制
  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程序设计有所帮助。

0 人点赞