批量插入数据

//新增一条数据的方法

    public function add()

    {

        /*$user =new UserModel();

        $user->id=1;

        $user->name='陈国松';

       $user->email='liuyun@qq.com';

        $user->birthday=strtotime('1989-7-11');

      if( $user->save()){

          return '用户新增成功';

      }else{

         return '用户新增失败';

      }*/

      $user['name']='看云';

      $user['email']='kanyun@qq.com';

      $user['birthday']=strtotime('1991-6-12');

     if($result=UserModel::create($user)){

         return '新增成功';

     } else{

         return '新增失败';

     }

    }

    //批量新增数据

    public function addList(){

        $user=new UserModel();

        $list=[

            ['name'=>'张三','email'=>'zhangsan@qq.com','birthday'=>strtotime('1978-8-9')],

            ['name'=>'李四','email'=>'lisi@qq.com','birthday'=>strtotime('1977-8-9')],

        ];

      if( $user->saveAll($list)){

           return '批量插入成功';

       }else{

          return '批量插入失败';
}
}

模型操作之更新数据

查找并更新

        $user=UserModel::get(1);
$user->name='陈松';
$user->email='chensong@qq.com';
$user->save();
if($user->save()){
return '成功';
}else{
return '失败';
}

直接更新数据

$user=new UserModel();

$user->save(['name'=>'刘涛','email'=>'liutao@qq.com'],['name'=>'陈国松']);

批量更新

$user =new UserModel();

$list=[

    ['id'=>1, 'name'=>'thinkphp', 'email'=>'thinkphp@qq.com'],

['id'=>2, 'name'=>'onethink', 'email'=>'onethink@qq.com']

] ;

$user->isUpdate()->saveAll($list);

数据库类更新数据

$user = new UserModel;
$user->where('name', '刘涛')->update(['name' => 'thinkphp']);

静态方法

UserModel::where('name','thinkphp')->update(['name'=>'陈国松','email'=>'chenguosong@qq.com','birthday'=>strtotime('1997-9-16')]);

查询

取出主键为1的数据

    $user=UserModel::get(1);
dump($user);
echo $user->name.'</br>'.$user->email.'</br>';

使用数组查询

    $user =UserModel::get(['name'=>'陈国松']);
echo $user->email;

实例化模型后调用查询方法

   $user=new UserModel;
$result=$user->where('name','陈国松')->find();
echo $result->name;
     $user =new Usermodel;
$result=$user->where('name','陈国松')->find();
echo $result->birthday;

根据主键查询多个数据

     $list=UserModel::all([1,2,3]);
foreach($list as $key=>$value){
echo $value->name.'</br>';
echo $value->birthday.'</br>';
echo $value->email.'</br>';
}
    $user =new UserModel;
$result=$user->where('name','陈国松')->limit(2)->order('id','desc')->select();
foreach($result as $key=>$value){
echo $value['name'].'</br>';
echo $value['email'].'</br>'; }

聚合

聚合函数的调用

    $user=new UserModel;
echo $user->Count('id').'</br>';
echo $user->Max('id');

静态调用大全

User::count();
User::where('status','>',0)->count();
User::where('status',1)->avg('score');
User::max('score');

动态调用大全

$user = new User;
$user->count();
$user->where('status','>',0)->count();
$user->where('status',1)->avg('score');
$user->max('score');

Thinkphp5.0第三篇的更多相关文章

  1. Thinkphp5.0第四篇

    删除数据 当前模型删除 $user=UserModel::get(1); if($user->delete()){return '删除成功';} else{return '删除失败';} 根据主 ...

  2. Thinkphp5.0第五篇

    原样输出 使用literal标签防止模板标签被解析 例如 {literal} {$name}<br/> {/literal} 模板单行注释 {//注释内容} 多行注释 {/*注释内容*/} ...

  3. 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...

  4. (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...

  5. RoboGuice 3.0 (三)总结篇

    经过前两篇的介绍,我们了解了如何使用RoboGuice方便的为我们注入需要的对象,这篇将着重说明原理. 一.Guice与RoboGuice Guise是Google开发的一个轻量级的依赖注入框架,主要 ...

  6. 从0开始搭建SQL Server 2012 AlwaysOn 第三篇(安装数据,配置AlwaysOn)

    这一篇是从0开始搭建SQL Server 2012 AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 操作步骤: 1.安装SQL server ...

  7. (转载) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式 ...

  8. thinkphp5.0学习笔记(三)获取信息,变量,绑定参数

    1.构造函数: 控制器类必须继承了\think\Controller类,才能使用: 方法_initialize 代码: <?php namespace app\lian\controller; ...

  9. Thinkphp5.0第二篇

    查询构造器 //插入记录 $result=Db::table('think_data')->insert(['name'=>'张三','status'=>1]); //修改数据 $r ...

随机推荐

  1. POJ-1062 昂贵的聘礼( 最短路 )

    题目链接:http://poj.org/problem?id=1062 Description 年轻的探险家来到了一个印 第安部落里.在那里他和酋长的女儿相爱了,于是便向酋长去求亲.酋长要他用1000 ...

  2. 牛客小白月赛6 I 公交线路 最短路 模板题

    链接:https://www.nowcoder.com/acm/contest/136/I来源:牛客网 题目描述 P市有n个公交站,之间连接着m条道路.P市计划新开设一条公交线路,该线路从城市的东站( ...

  3. 计蒜客-第五场初赛-第二题 UCloud 的安全秘钥(简单)

    每个 UCloud 用户会构造一个由数字序列组成的秘钥,用于对服务器进行各种操作.作为一家安全可信的云计算平台,秘钥的安全性至关重要.因此,UCloud 每年会对用户的秘钥进行安全性评估,具体的评估方 ...

  4. ssh的秘钥认证

    ssh秘钥认证简述 通常我们会使用x-shell.putty.MobaXterm等支持ssh连接的工具去登录服务器进行管理,而执行ssh命令.scp命令等从一台服务器登录另外一台服务器的时候,通常需要 ...

  5. 在Word指定位置插入富文本域值(html文本)

    遇到此问题,首先想到的就是各种百度.结果度娘了一会并没有发现有用的有效的解决方法,哎,看来还得靠自己啊. 首先整理了下手头上的资源,一是HtmlAgilityPack,专门解析Html文本用的:二是我 ...

  6. 【第十二篇】微信支付(APP)集成时碰到的问题(.net提示“无权限”、iOS跳转到微信支付页面中间只有一个“确定”按钮)(转)

    直入主题之前,请容我吐槽一下微*的官方东西:ASDFQ%#$%$#$%^FG@#$%DSFQ#$%.......:吐槽玩了!大家心照就好. 要完成手机APP跳转到微信的APP进行微信支付,需要进行如下 ...

  7. apache ignite系列(五):分布式计算

    ignite分布式计算 在ignite中,有传统的MapReduce模型的分布式计算,也有基于分布式存储的并置计算,当数据分散到不同的节点上时,根据提供的并置键,计算会传播到数据所在的节点进行计算,再 ...

  8. 【Sentinel】sentinel 集成 apollo 最佳实践

    [Sentinel]sentinel 集成 apollo 最佳实践 前言   在 sentinel 的控制台设置的规则信息默认都是存在内存当中的.所以无论你是重启了 sentinel 的客户端还是 s ...

  9. 使用CoordinatorLayout打造各种炫酷的效果

    使用CoordinatorLayout打造各种炫酷的效果 自定义Behavior -- 仿知乎,FloatActionButton隐藏与展示 NestedScrolling 机制深入解析 一步步带你读 ...

  10. Integer对象大小比较问题

    一.问题 先来看一看例子 public class IntegerTest { public static void main(String[] args) throws Exception { In ...