1、Request组件
Request封装了$_SERVER,统一了不同Web服务器的变量 , 并且提供$_POST,$_GET,$_COOKIES ,还包括HTTP中PUT、DELETE等方法
2、调用Request组件
1) 直接调用Request类 : \Yii::$app->request
2) 常用Request方法及属性
判断是不是Ajax请求:\Yii::$app->request->isAjax
判断是不是Post请求:\Yii::$app->request->isPost
获取用户浏览器:\Yii::$app->request->userAgent
获取用户IP:\Yii::$app->request->userIp
读取$_GET全部数据 : \Yii::$app->request->get()
读取$_GET数据 :\Yii::$app->request->get(‘username’)
读取$_POST全部数据:\Yii::$app->request->post()
读取$_POST数据:\Yii::$app->request->post('username')
更多的信息可以查阅:http://www.yiiframework.com/doc-2.0/yii-web-request.html
3、Html组件
\yii\helpers\Html组件 , 提供了封装好的Html代码 , 直接调用Html的相对方法就可以生成相对应的Html代码 。
4、调用常用的Html组件之直接生成Html
1) 生成表单
//beginForm(‘提交的Url’ , ‘类型POST或GET’ , ‘单表的属性id,class等’)
<?=\yii\helpers\Html::beginForm('' , 'post' , ['id' => 'addForm']);?>
//endForm也是必须,就是闭合表单
<?=\yii\helpers\Html::endForm();?>
2) 生成Text输入框
//input(“类型text/password/text” , ‘name的名称’ , ‘默认值’ , ‘属性例如class,id等’);
<?=\yii\helpers\Html::input('text' , ‘name’, '' , ['class'=>'name' , 'id' => 'name']);?>
//直接生成指定类型的typeInput(‘name的名称’ , ‘默认值’ , ‘属性例如class,id等’)
//直接生成password类型的输入框
<?=\yii\helpers\Html::passwordInput('pwd' , '' , ['id' => 'password'])?>
//直接生成text类型的输入框
<?=\yii\helpers\Html::textInput("name" , '' , ['id' => 'name'])?>
//直接生成hidden类型的隐藏框
<?=\yii\helpers\Html::hiddenInput("hidden" , '' , ['id' => 'hidden'])?>
3) 生成textArea
//textarea(‘name的名称’ , ‘默认值’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::textarea('intro' , '' , ['class'=>'intro' ]);?>
4) 生成radio 及radio列表
//radio(‘name的名称’ , ‘是否选中true/false’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::radio('status' , false , ['class' =>'status'])?>
//radioList(‘name的名称’ ,’选中的值’ , ‘数组选中键值’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::radioList('fav' , 1 , [1 => 'test' , 2 => 'mrs' ] , ['class'=>'fav-list'])?>
5) 生成checkbox 及checkbox列表
//checkbox(‘name的名称’ , ‘是否选中true/false’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::checkbox("ckbox" , false , ['class' => 'ckbox'])?>
//checkboxList(‘name的名称’ ,’选中的值’ , ‘数组选中键值’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::checkboxList('cklist' , 1 , [1 => 'mr' , 2 => 's' ] , ['class'=>'cklist'])?>
6)生成select下拉框
//dropDownList(‘name的名称’ ,’选中的值’ , ‘数组选中键值’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::dropDownList('sts' , 0 , [1 => '是' , 0 => '否' ] , ['class'=>'sts'])?>
7)生成label
//label(‘显示的名称’ , ‘for的字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::label('name:' , 'uname' , ['class'=>'label'])?>
8)生成上传控件
//fileInput(‘name的名称’ , ‘默认值’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::fileInput('image' , null , ['class'=>'upload' ])?>
9)生成按钮
//button(‘显示的文字’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::button("按钮" , ['class' => 'btn'])?>
<?=\yii\helpers\Html::submitButton("提交按钮" , ['class' => 'btn-submt'])?>
<?=\yii\helpers\Html::resetButton("重置" , ['class' => 'btn-reset'])?>
5、调用常用的Html组件之生成与Model字段关联的Html
1)生成Text输入框
//$model是实例化一个Model , title则是他的字段
//activeInput(‘input的类型text/password’ , ‘实例化Model’, ‘字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeInput('title' , $model, 'title' , ['class' => ‘input'])?>
//直接生成指定类型的typeInput(‘ ‘实例化Model’ , ‘字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeTextInput($model, 'name' , ['class' => 'input'])?>
<?=\yii\helpers\Html::activePasswordInput($model, 'pwd' , ['class' => 'input'])?>
<?=\yii\helpers\Html::activeHiddenInput($model, 'name' , ['class' => 'input'])?>
2)生成textArea
//activeTextarea(‘实例化Model’, ‘字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeTextarea($model , 'content' , ['class'=>'intro' ]);?>
3)生成radio 及radio列表
//activeRadio(‘实例化Model’, ‘字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeRadio($model , 'sts', ['class' =>'status'])?>
//activeRadioList(‘实例化Model’, ‘字段’, ‘数组(键值)’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeRadioList($model,'sts' , [1=>'mrs' ,2=>'s' ] , ['class'=>'st'])?>
4)生成checkbox 及checkbox列表
//activeCheckbox(‘实例化Model’, ‘字段’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeCheckbox($model , 'sts' , ['class' => 'ckbox'])?>
//activeCheckboxList(‘实例化Model’, ‘字段’, ‘数组(键值)’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeCheckboxList($model , 'sts',[1=>'f',2=>'m'], ['class'=>'ss'])?>
5)生成select下拉框
//activeDropDownList(‘实例化Model’, ‘字段’, ‘数组(键值)’ , ‘属性例如class,id等’)
<?=\yii\helpers\Html::activeDropDownList($model,'fg',[1=>'f',2=>'m'] , ['class'=>'sx'])?>
6、Html转义和反转义html代码
<?php
$html = ‘<b>test</b>’;
//转义html代码
$thtml = \yii\helpers\Html::encode($html);
//反转义html代码
$html = \yii\helpers\Html::decode($thtml);
?>
- Yii2使用Url组件
- Yii2的Html,Request组件详解
- YII2.0框架, 多图片上传功能
- yii2-imagine配置
- 有洁癖的禁止默认YII自带垃圾代码(个人认为)、JS、CSS(新手教程)
- Yii2 API接口输出统一Json和jsonp格式方法
- MySql 创建表的一些语句释义
- Yii2联合查询(配合GridView)
- Yii 通用系统字典
- ArrayHelper的多维数组排序函数multisort,强大无比。
- 路由规则,在Url中替换使用'/'以外的符号连接
- 从excel文件中读取表格内容,并批量写入数据库
- yii2注册时验证用户名、邮箱等唯一性
- Yii2最全的实战教程
- Composer安装yii2-imagine 压缩,剪切,旋转,水印
- LinkPager增加总页数 和总记录数
- Yii2 获取模块名控制器名方法名
- Yii2使用yii2-adminlte+yii2-admin左侧菜单子路径不高亮问题又解
- 前端CSS框架
- Yii2 之 frontend 子模块实践之一:添加前后台子模块
- Yii2 之 frontend 子模块实践之二:构建子模块的独立配置
- Yii2 之 frontend 子模块实践之三:布局和语言配置
- 完美解决ajax验证码不刷新问题,让验证码更加美观,不修改任何源代码
- yii2.0 表单小部件常用的默认选中
- Yii2 controller 传值给layout
- yii2 dropDownList 二级和三级 联动写法
- 微信扫码登录 新窗口二维码 扫完关闭二维码页面 进入登录页面
- yii2 实现 "上一篇,下一篇" 功能
- Yii 行为简单应用
- SQL语句