一、Php控制器跳转
return $this->redirect('/site/index/index');
 
二、回调自身控制器
self::actionXxxx();
 
三、获取当前用户信息
Yii::$app->user->identity->id;
 
四、获取当前MODULE
Yii::$app->controller->module->id
 
五、获取当前控制器
Yii::$app->controller->id
 
六、获取当前方法
Yii::$app->controller->action->id
 
七、获取当前页面get值
{% if app.request.get.game == 'XXXX' %}
 
八、活动对象更新数据       
$a=Admin::findOne(['username'=>"0017"]);
$a->type=9;
$a->save();
 
九、Mongo AND  OR 查询条件
['$and'=>[['oid'=>”880”,['$or'=>[['status'=>1],['status'=>2]]]]]
 
十、Mysql
['or', ['id' => 11], ['id' => 10]
或者->where()->orWhere()
 
十一、Ajax回调
Return functionsUtil::ajaxReturn(1,’回调信息’);
public function ajaxReturn($status=0,$info='',$data=array()){
  $json=[
    'status' => $status,
    'info' => $info,
    'data' => $data,
  ];
  return json_encode($json);
}
 
十二、Yii分页
$mess=Buyorder::find();
$count=$mess->count();
$pages=new Pagination(['totalCount'=>$count,'pageSize'=>5]);.
$data['pages']= $pages;
$data['select']=$mess->offset($pages->offset)->orderBy(['id'=>SORT_DESC])->limit($pages->limit)->asArray()->all();
{{ LinkPager(pages)|raw }}
 
十三、Mongo 排序
"time desc,status asc"
 
十四、取参数
Yii::$app->params['xxx']
 
 
十五、原生sql语句
$qsql = 'SELECT m.username,m.realname,w.money from member as m left  join member_wealth as w on m.id=w.uid where w.money>=1000';
 $qres = Yii::$app->db->createCommand($qsql)->queryAll();
 
十六、定时刷新页面
setTimeout(function(){ },1000)
 
十七、页面跳转
Window.location.href=””;
 
十八、页面退回
window.history.back(-1);
 
十九、字符拼接
JS +  PHP .
 
二十、Db源码查询
Use yii\db
$db->createCommand(‘select * FROM database WHERE id =1’)->queryOne();
 
二十一、二维数组按某字段排序
$sort = array(
 'direction' => 'SORT_DESC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
 'field'     => 'createtime',       //排序字段
);
$arrSort = array();
foreach($a AS $uniqid => $row){
      foreach($row AS $key=>$value){
            $arrSort[$key][$uniqid] = $value;
        }
}
if($sort['direction']){
array_multisort($arrSort[$sort['field']], constant($sort['direction']), $a);
}
 
二十二、获取特定时间戳
//php获取今日开始时间戳和结束时间戳
$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
 
//php获取昨日起始时间戳和结束时间戳
$beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
 
//php获取上周起始时间戳和结束时间戳
$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
 
//php获取本月起始时间戳和结束时间戳
$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
$endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));
 
二十三、mongo大于、小于、不等于
$where['字段']= ['$gte'=>$beginToday,'$lte'=>$endToday];
$where['字段']= ['$ne'=>$beginToday];
e<=>等于
 
二十四、表单提交
 
$.ajax({
        url:'/operative/default/addspread',
        type:'post',
        processData : false,  // 告诉jQuery不要去处理发送的数据
        contentType : false,  // 告诉jQuery不要去设置Content-Type请求头
        data:new FormData($('#addspread')[0]),
        dataType:'json',
        success:function(data){
            alert(1);
        }
});
 
二十五、EXCEL导出
$data = Buyorder::find()->where($where)->andWhere(['>','paytime',$gte])->andWhere(['<','paytime',$lte])->andWhere(['<>','ispay',0])->asArray()->all();
$name = date('Y-m-d').('请用WPS打开');
Header("Content-type: application/octet-stream ");
Header("Accept-Ranges: bytes ");
header("Content-type:application/vnd.ms-excel;charset=UTF-8");
Header("Content-Disposition:attachment;filename=$name.xlsx ");
echo '编号'.chr(9);
echo '订单号'.chr(9);
echo chr(13);
foreach ($data as $k=>$v){
echo $v['id'].chr(9);
echo $v['order_id'] .chr(9);
echo chr(13);
}
exit();
}
二十六、JS标签值获取
var time = $("input[name='time']").val();
二十七、别名
设置别名 Yii::setAlias('@app', dirname(__DIR__) . '/');
获取别名 Yii::getAlias('@app')

Yii2框架---常用代码的更多相关文章

  1. Yii2框架 常用函数整合

    1.使用事务添加数据: public function create() { if($this->validate()) { $trans = Yii::$app->db->begi ...

  2. Yii2 常用代码集合

    Yii2.0 对数据库查询的一些简单的操作 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...

  3. Yii2框架RESTful API教程(二) - 格式化响应,授权认证和速率限制

    之前写过一篇Yii2框架RESTful API教程(一) - 快速入门,今天接着来探究一下Yii2 RESTful的格式化响应,授权认证和速率限制三个部分 一.目录结构 先列出需要改动的文件.目录如下 ...

  4. [PHP]Yii2框架的坑

    [PHP]Yii2框架的坑.md-/Users/zjh/Documents/我的文章/[PHP]Yii2框架的坑 html{font-family: sans-serif;-ms-text-size- ...

  5. Yii2框架与MongoDB拓展、Redis拓展的安装流程

    @author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...

  6. YII2框架动态创建表模型

    YII2框架动态创建表模型 在YII2中,每个表对应一个model类 在开发过程中,我们在填写一个大型表单的时候,表单里有N个select下拉列表,每个下拉select来自于不同的表: 如果要在程序里 ...

  7. [资源共享]C#+AE构建GIS桌面端应用系统框架-全代码

    转自:http://www.cnblogs.com/gispeng/archive/2008/10/06/1304534.html    [资源共享]C#+AE构建GIS桌面端应用系统框架-全代码 ( ...

  8. 《深入解剖Yii2框架》前言

    写代码需要站在巨人的肩膀上,将主要精力集中在自己所需要实现的业务上面,避免反复搭建基础服务,重复造轮子.PHP框架就是这样一些巨人的"肩膀",使得我们"站"得更 ...

  9. PyTorch常用代码段整理合集

    PyTorch常用代码段整理合集 转自:知乎 作者:张皓 众所周知,程序猿在写代码时通常会在网上搜索大量资料,其中大部分是代码段.然而,这项工作常常令人心累身疲,耗费大量时间.所以,今天小编转载了知乎 ...

随机推荐

  1. 关于Tarjan(3)——离线LCA

    LCA(最近公共祖先),指对于一棵树上任意两个节点往上走最早都能到达的节点. 求LCA有两种方法,一种是倍增,另一种则是Tarjan........ Tarjan巧妙利用并查集的思想: 这里的Tarj ...

  2. 更改服务器的SID 加入域控制器提示SID重复

    启动Windows2008.2012进入系统后,打开“CMD窗口”并进入到"C:\windows\system32\sysprep"目录后再输入“sysprep /generali ...

  3. Spring定时任务解决博客缓存数据更新问题

    最近在做博客系统的时候,由于很多页面都有右边侧边栏,内容包括博客分类信息,归档日志,热门文章,标签列表等,为了不想每次访问页面都去查询数据库,因为本身这些东西相对来说是比较固定的,但是也有可能在网站后 ...

  4. YII2.0 ——安装yii2项目

    有两种安装方式 第一种:使用composer进行安装 composer global require"fxp/composer-asset-plugin:^1.2.0" compo ...

  5. linux 下日常使用便利工具

    Nautilus 你工作中有在GUI和命令行之间切来切去吗?当你总是要在命令行中输入你要进入的目录的时候,你有沮丧无奈过吗?如果有的话,那么,你一定要试下这个nautilus插件 —— nautilu ...

  6. [Android]使用RecyclerView替代ListView(四:SeizeRecyclerView)

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:<> [Android]使用RecyclerView替代ListView(四:SeizeRecyclerView) 在RecyclerV ...

  7. 传输层TCP协议

    目录 首部格式数据单位特定注意自动重传请求ARQ具体实现发送缓存接收缓存滑动窗口确认丢失和确认迟到超时重传时间选择报文段的发送时机运输连接发送TCP请求客户端拥塞处理相关概念避免拥塞具体实现TCP 的 ...

  8. echarts雷达图点击事件

    最近看见别人问的问题,点击雷达图的拐点,获取点击数据的问题,直接上代码. echarts配置问题:https://www.douban.com/note/509404582/ <!doctype ...

  9. 管中窥豹——从对象的生命周期梳理JVM内存结构、GC调优、类加载、AOP编程及性能监控

    如题,本文的宗旨既是透过对象的生命周期,来梳理JVM内存结构及GC相关知识,并辅以AOP及双亲委派机制原理,学习不仅仅是海绵式的吸收学习,还需要自己去分析why,加深对技术的理解和认知,祝大家早日走上 ...

  10. jmeter 登录并发 (此文章有待修改)

    1.先通过录制通过取样器找到所需要的请求.并新建添加至线程组,也可以根据以下样式找到所需请求.复制添加至线程组 寻找请求 添加后 2.添加CSV配置元件 3.填写CSV参数 4.修改参数.这是格式:& ...