Php 在symfony中,使用在两个表中具有不同字段的非相关表进行分页
我想对两个DB表(Table1和Table2)的记录进行分页,这两个DB表彼此不相关,并且两个DB表都有不同的字段数。每个查询都应该有一些条件,并与其他一些表连接 我想同时对这两个表的记录进行分页,以便按如下方式显示数据-Php 在symfony中,使用在两个表中具有不同字段的非相关表进行分页,php,mysql,symfony-1.4,Php,Mysql,Symfony 1.4,我想对两个DB表(Table1和Table2)的记录进行分页,这两个DB表彼此不相关,并且两个DB表都有不同的字段数。每个查询都应该有一些条件,并与其他一些表连接 我想同时对这两个表的记录进行分页,以便按如下方式显示数据- Row1 = Table1's - name, address,... Row2 = Table2's - tool_name, quantity,... Row3 = Table1's - name, address,... Row4 = Table2's - tool_n
Row1 = Table1's - name, address,...
Row2 = Table2's - tool_name, quantity,...
Row3 = Table1's - name, address,...
Row4 = Table2's - tool_name, quantity,...
.
.
.
如果没有表1的记录,则将对表2进行分页,反之亦然。
我想在symfony PHP框架上完成这项工作。有人能帮我形成这种分页类型的查询吗。我最终得到了类似的结果 获取不同查询的所有数据并存储到数组中,然后缓存它
foreach($queries as $key => $query) {
foreach ($query->fetchArray() as $result) {
$data[] = $result;
}
}
$c = new sfFileCache(
array(
'cache_dir' => sfConfig::get('sf_cache_dir').'/function',
'lifetime' => 3600,
)
);
$c->set('myarray',serialize($data));
我扩展了sfDoctrinePager,以便它可以找到所有这些查询的总页数等
然后,我使用PHP usort()按照特定顺序对数据进行排序
usort($data, array($this,'activity_sort'));
然后我使用PHP数组_chunk()获取有限的记录
$chunkedData = array_chunk($data, $limit);
$finalData = $chunkedData[$page - 1];
是的,它打破了分页规则,但当时我没有找到比这更好的解决方案。Hi@Sitansu,你是如何结束它的?谢谢抱歉耽搁了。由于答案有点长,我把答案放在答案部分。