本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
控制器文件位置 /_ 分组目录(如 /app) |_ controllers |_ 在此文件夹内创建控制器 控制器文件命名 [ 只支持字母 + 数字 ] 控制器名称.php 控制器代码编写规范 自定义控制器必须继承 grace 基础控制器! <?php class 控制器名称Controller extends grace{ //方法定义 publ
本文向大家介绍django框架创建应用操作示例,包括了django框架创建应用操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了django框架创建应用操作。分享给大家供大家参考,具体如下: 18.1.5 安装Django 安装Django 18.1.6 在Django 中创建项目: /django/mysite/learning_log/learning_log 18.1.7
本文向大家介绍Laravel框架控制器的request与response用法示例,包括了Laravel框架控制器的request与response用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Laravel框架控制器的request与response用法。分享给大家供大家参考,具体如下: Laravel 控制器的request Laravel 控制器的response 更多关于L
我正在使用 Rails 3,并且我在 StatusController 中有一个form_for。当我点击提交按钮时,我的创建方法永远不会被调用。我的创建方法有一个redirect_to:index,但是当我点击提交时,所有信息都保留在表单中,并且页面不会重定向。但是,该对象确实在数据库中正确保存。 这是什么原因造成的? 控制器: 查看: 我已经将代码调整到此,现在数据在提交时从表单中消失,但是对
概览 触发器配置卡片 此面板配置一些触发器的基本信息,或者进行查阅触发器触发日志等操作。 触发类型目前有两种: 数据表 微信支付回调 条件卡片 对应上面的触发类型,设置不同触发类型的参数。 动作卡片 当触发器的条件被满足,将会执行触发器中的动作。 目前有四种动作类型可选,分别如下: 邮件 微信模板消息 webhook 数据表操作 不同的触发类型对应可选的动作类型不同,每个动作类型又有可选模板变量的
空操作 空操作是指系统在找不到指定的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化。 下面的例子用空操作功能实现了一个城市切换的功能。 我们只需要给City控制器类定义一个_empty (空操作)方法: <?php namespace app\index\controller; class City { public fu