本文实例讲述了Yii 框架控制器创建使用及控制器响应操作。分享给大家供大家参考,具体如下:
Yii 框架控制器创建使用
在根目录下的controllers目录下创建控制器HelloController.php:
1
2
3
4
5
6
7
8
9
|
<?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后边跟控制器名字/方法名字。
如果需要传递参数:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<?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 框架控制器响应
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
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程序设计有所帮助。
原文链接:https://www.cnblogs.com/gyfluck/p/9089543.html