1
2
|
$Model
=
new
Model()
// 实例化一个model对象 没有对应任何数据表
$Model
->query(
"select * from think_user where status=1"
);
|
若是刚学Thinkphp对框架不太了解能够用query($sql) 和 execute($sql) 两个方法能够实现任何的sql操做query用于查询操做,execute用于非查询操做。可是框架已经封装好了经常使用的方法,且用起来更方便。php
下面是最经常使用的查询方法:web
1.select()sql
1
2
3
4
5
6
7
8
9
10
11
12
|
// 将全部数据查出,失败返回 false,无结果返回 null
$user
= M(
'demo'
);
$data
=
$user
->select();
dump(
$data
);
// 加入条件
$user
->field(
'name,sex'
)->where(
'id > 2'
)->order(
'age'
)->limit(3)->select();
//查询主键值为30的信息
$user
->select(
'30'
);
// 查询主键为21,23,27的值
$user
->select(
'21,23,27'
);
|
2.find()thinkphp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// 查询出一条数据
$user
= M(
'demo'
);
// 失败返回false
if
(
$data
=
$user
->find()){
dump(
$data
);
}
// 加入where条件
$user
= M(
'demo'
);
$data
=
$user
->field(
'name,sex'
)->where(
'id > 2'
)->find();
dump(
$data
);
// 返回一维数组
$data
->find(
'30'
);
$manager
->where(
"username = '$username' and password = '$password'"
)->find();
|
3.getField()数组
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
// 获取列数据中的第一条
$user
= M(
'demo'
);
$data
=
$user
->getField(
'name'
);
//默认第一个
// 第二个参数位true 则获取整列数据
$user
->where(
"id = 3"
)->getField(
'name'
,true);
// 限制显示条数
$nickname
=
$User
->where(
'status=1'
)->getField(
'nickname'
,8);
$nickname
=
$User
->where(
'status=1'
)->limit(8)->getField(
'nickname'
,true);
// 返回二维数组,键名为第一个
$nickname
=
$User
->where(
'status=1'
)->getField(
'id,nickname,sex'
);
// 使用链接符':' 键名是id值,键值则是account:nickname链接组成的字符串
$result
=
$User
->where(
'status=1'
)->getField(
'id,account,nickname'
,
':'
);
|
还有详细的查询方法详见 ThinkPHP3.2手册中的 "模型>查询语句" 章节。框架