YII框架学习笔记之命名空间、操作响应与视图操作示例


Posted in PHP onApril 30, 2019

本文实例讲述了YII框架命名空间、操作响应与视图操作。分享给大家供大家参考,具体如下:

YII基础准备

1.命名空间

<?php
/****假设有三个同名的类,输出的值为A,B,C****/
use a\b\c\apple;
use d\e\f\apple as bApple;
use g\h\i\apple;
$app = new apple();//A
$app = new bApple();//B
$app = new \Apple();//C 调用的是全局的

2.操作响应

<?php 
namespace app\controllers;
use yii\web\Controller;
use yii\data\Pagination;
use app\models\Country;
class CountryController extends Controller
{
  public function actionIndex()//不叫方法叫操作
  {
    $request = \YII::$app->request;//能够获取到url值
    echo $request->get('id',20);//如果没有传参可以设置默认值
    if($request->isGet) //isPut
    {
      echo "this is get method";
    }
    echo $request->userIP;//获取用户IP
    $res = \YII::$app->response;//获取响应状态
    $res->statusCode = 404;//人为设置响应状态码
    //$res->headers->add('pragma','no-cache');//设置head不设置缓存
    $res->headers->set('pragma','max-age=5');//设置head缓存5分?秒钟
    $res->headers->remove('pragma');
    //跳转
    $res->headers->add("location","http://www.baidu.com");
    $this->redirect("http://www.baidu.com",302);
    //文件下载
    $res->headers->add('content-disposition','attachment;filename="a.jpg"');
    $res->sendFile("robots.txt");
  }
}

3. Yii视图操作

<?php
namespace app\controllers;
use yii\web\Controller;
class HelloController extends Controller
{
public function actionIndex()
{
$hellp_str = "hello God!";
$data = array();
$data["view_hello_str"] = $hello_str;
return $this->renderPartial("index",$data);
}
}
?>

views\hello\index.php

$helper_str = "hello world!<script>console.log(111);</script>"
<?php
use yii\helpers\Html;//转义
use yii\helpers\HtmlPurifier;//过滤html
<h1><?= Html::encode($view_hello_str);?></h1> <!--Html::encode() 能防止跨站脚本攻击,转义html标签-->
<h1><?= HtmlPurifier::process($view_hello_str);?></h1>
<?= $this->render('_overview') ?><!--在一个视图中调用另一个视图-->

禁用布局

控制器内控制:

public $layout=false/'layout'

控制器成员方法内控制:

$this->layout=false/'layout'

视图中选择布局:

$this->context->layout=false/'layout'

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
让PHP COOKIE立即生效,不用刷新就可以使用
Mar 09 PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
Dec 07 PHP
PHP Cookie的使用教程详解
Jun 03 PHP
PHP函数eval()介绍和使用示例
Aug 20 PHP
Yii框架获取当前controlle和action对应id的方法
Dec 03 PHP
php随机抽奖实例分析
Mar 04 PHP
PHP中array_keys和array_unique函数源码的分析
Feb 26 PHP
php实现三级级联下拉框
Apr 17 PHP
PHP里面把16进制的图片数据显示在html的img标签上(实现方法)
May 02 PHP
php弹出提示框的是实例写法
Sep 26 PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
Oct 30 PHP
YII框架关联查询操作示例
Apr 29 #PHP
YII框架页面缓存操作示例
Apr 29 #PHP
YII框架http缓存操作示例
Apr 29 #PHP
PHP常见的几种攻击方式实例小结
Apr 29 #PHP
php-fpm重启导致的程序执行中断问题详解
Apr 29 #PHP
详解提高使用Java反射的效率方法
Apr 29 #PHP
Thinkphp整合阿里云OSS图片上传实例代码
Apr 28 #PHP
You might like
dede3.1分页文字采集过滤规则详说(图文教程)续二
2007/04/03 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
Extjs 几个方法的讨论
2010/01/28 Javascript
基于json的jquery地区联动效果代码
2011/07/06 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
jquery实现checkbox 全选/全不选的通用写法
2014/02/22 Javascript
jQuery制作简洁的多级联动Select下拉框
2014/12/23 Javascript
浅析JS动态创建元素【两种方法】
2016/04/20 Javascript
jquery mobile 实现自定义confirm确认框效果的简单实例
2016/06/17 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
在vscode中统一vue编码风格的方法
2018/02/22 Javascript
微信小程序画布圆形进度条显示效果
2020/11/17 Javascript
在vue 中使用 less的教程详解
2018/09/26 Javascript
[46:43]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第三局
2016/02/28 DOTA
让python json encode datetime类型
2010/12/28 Python
python正则表达式match和search用法实例
2015/03/26 Python
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
2017/08/21 Python
Python装饰器用法示例小结
2018/02/11 Python
python中将正则过滤的内容输出写入到文件中的实例
2018/10/21 Python
Python Pandas 如何shuffle(打乱)数据
2019/07/30 Python
运用PyTorch动手搭建一个共享单车预测器
2019/08/06 Python
Python日志器使用方法及原理解析
2020/09/27 Python
前台接待的工作职责
2013/11/21 职场文书
综合实践活动方案
2014/02/14 职场文书
光信息科学与技术专业职业生涯规划
2014/03/13 职场文书
社区健康教育实施方案
2014/03/18 职场文书
新品发布会主持词
2014/04/02 职场文书
医院护士见习期自我鉴定
2014/04/10 职场文书
2015年班干部工作总结
2015/04/29 职场文书
英文辞职信范文
2015/05/13 职场文书
教师节简报
2015/07/20 职场文书
python中%格式表达式实例用法
2021/06/18 Python