首页 > 其他 > 详细

比较TP3 TP5 LARAVEL

时间:2019-07-20 10:31:45      阅读:104      评论:0      收藏:0      [点我收藏+]

一、查询

TP3

  D方法实例化模型类的时候通常是实例化某个具体的模型类,如果你仅仅是对数据表进行基本的CURD操作的话,使用M方法实例化的话,由于不需要加载具体的模型类,所以性能会更高。

$map = array();
$map[‘u.store_id‘] = array(‘eq‘,0);
$map[‘u.reg_time‘] = array(‘egt‘,time());
$map[‘u.user_rank‘] = array(‘in‘,array(0,9));

$group = ‘‘;
$order = ‘‘;
//查询10-20的数据集
$list = M(‘users u‘)->field(‘u.user_id,u.user_name,u.store_id‘)
    ->join(‘LEFT JOIN __ORDER_INFO__ oi ON oi.user_id=u.user_id‘)
    ->where($map)
    ->limit(10,20)
    ->group($group)
    ->order($order)
    ->select();

//读取数据表中的一行数据(或者关联数据),主要通过find方法完成
//如果查询出错,find方法返回false,如果查询结果为空返回NULL,查询成功则返回一个关联数组(键值是字段名或者别名)。
$data = M(‘users‘)->where(‘status=1 AND name="thinkphp"‘)->find();

//读取字段值其实就是获取数据表中的某个列的多个或者单个数据,最常用的方法是 getField方法。
//默认情况下,当只有一个字段的时候,返回满足条件的数据表中的该字段的第一行的值。
$nickname = M("User")->where(‘id=3‘)->getField(‘nickname‘);
//如果需要返回整个列的数据,可以用:
$nickname = M("User")->getField(‘id‘,true);
//如果传入多个字段的话,默认返回一个关联数组:
$list = M("User")->getField(‘id,nickname‘);

//获取用户数:
$userCount = M("User")->count();

//原生sql查询
$Model = new \Think\Model() // 实例化一个model对象 没有对应任何数据表
$Model->query("select * from think_user where status=1");

TP5

二、更新

TP3

$data = array();
$data[‘name‘] = ‘ThinkPHP‘;
$data[‘email‘] = ‘ThinkPHP@gmail.com‘;
M("User")->where(‘id=5‘)->save($data); // 根据条件更新记录

//原生sql执行修改、删除
$Model = new \Think\Model() // 实例化一个model对象 没有对应任何数据表
$Model->execute("update think_user set name=‘thinkPHP‘ where status=1");

 

比较TP3 TP5 LARAVEL

原文:https://www.cnblogs.com/gaocy/p/11216683.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!