drupal 连表查询+分页
$query = db_select('Table','t'); $query->join('Table_A','a','on条件); $query->join('Table_B','b','on条件'); $objects=$query->extend('PagerDefault')//重要,extend('PagerDefault')实现分页 ->fields('t', array( 'colname_1','colname_2'))
->fields('b', array( 'colname_1','colname_2'))
->fields('b', array( 'colname_1','colname_2'))
->condition('t.status',1) ->condition('a.status',1)
->orderBy('n.created','DESC') ->limit(1) -> execute() ;
$output="";
$rows = array();
$title_length=25;
foreach ($objects as $key => $object)
{
$row = array();
$title="";
if (strlen($object -> filename)>$title_length) {
$title= drupal_substr($object -> filename,0,50).'...' ;//最多显示12个字
}
else { $title= $object -> filename ;//最多显示12个字 }
$url_head='http://'.$_SERVER['HTTP_HOST'].'/drupal755/sites/default/files/';
$url=$url_head.ltrim($object->uri,'public://');
$row['title']=l($object -> filename,$url);
$row['created']=date('Y-m-d',$object->created); $rows[] = $row;
}
$results=$rows;
$output .= theme('table', array('rows' => $rows));
$output .= theme('pager'); return $output;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)