ThinkPHP多表查询

这里有两张关联的表(table1,table2),想要通过其中一张表(table1)查询另外一张表(table2)的详细信息.在tp框架中该如何实现呢?

(table1)

id uid tid
1 66 25
2 67 26
3 68 27
4 68 28
5 70 29

(table2)

id name gender
25 张三
26 李四
27 小花
28 小草
29 可乐

注意,其中uid相同代表是在同一个uid下显示信息.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if (I('post.uid')) {
$map['uid'] = '68';
$table1 = M('table1');
if($orderData = $table1->where($map)->select()){
$data = array();
$table2 = M('table2');
foreach ($orderData as $v) {
$news_map['id'] = $v['tid'];
if($myClient = $table2->where($news_map)->find()){
array_push($data, $myClient);
}
}
$msg['status'] = 1;
$msg['data'] = $data;
$this->ajaxReturn($msg);
} else {
$msg['status'] = 0;
$msg['msg'] = '没有信息!';
$this->ajaxReturn($msg);
}
}

返回的json数据如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"status": 1,
"data": [
{
"id": "27",
"name": "小花",
"sex": "女"
},
{
"id": "28",
"name": "小草",
"sex": "女"
}
]
}