1、thinkphp中读取字段值
读取字段值其实就是获取数据表中的某个列的多个或者单个数据,最常用的方法是 getField方法。
实例如下:
$User = M("User"); // 实例化User对象
// 获取ID为3的用户的昵称
$nickname = $User->where('id=3')->getField('nickname');
如果需要返回整个列的数据,可以用:
$User->getField('id',true); // 获取id数组//返回数据格式如array(1,2,3,4,5)一维数组,其中value就是id列的每行的值
2、where查询中数组查询:
①、普通查询:
$User = M("User"); // 实例化User对象
$map['name'] = 'thinkphp';
$map['status'] = 1;
// 把查询条件传入查询方法
$User->where($map)->select();
最后生成的SQL语句:
SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1
②、表达式查询
上面的查询条件仅仅是一个简单的相等判断,可以使用查询表达式支持更多的SQL查询语法,查询表达式的使用格式:
$map['字段1'] = array('表达式','查询条件1');
$map['字段2'] = array('表达式','查询条件2');
$Model->where($map)->select(); // 也支持
表达式不分大小写,支持的查询表达式有下面几种,分别表示的含义是:
二者结合就是,将getFiled得到的数组(形式)、放置于where条件查询
$rs_info = M('table_name')->where($where)->getField('id',true);
$where_class['class_id'] = array('in', $rs_info);
$rs2_info = M('table2_name')->where($where_class)->select();