function thumblist($pid, $width = 0, $height = 0, $maximgcount = 3, $tid = 0){ global $_G; if(!$pid) return array(); $width = intval($width); $height = intval($height); $maximgcount = intval($maximgcount); $tid = intval($tid); $maximgcount = $maximgcount <= 0 ? 3 : $maximgcount; $maximgcount = min($maximgcount, 3); $width = $width <= 0 ? 200 : $width; $height = $height <= 0 ? 100 : $height; if(!$tid) { $tid = C::t('forum_post')->fetch_tid_by_pid($pid); } if(!$tid) return array(); $attachments = C::t('forum_attachment_n')->fetch_all_by_id('tid:'.$tid, 'pid', $pid, 'AId', true, false, false, $maximgcount); $list = array(); $count = 0; $nums = count($attachments); if($nums ==1){ $width = 692; $height =708; } elseif ($nums == 2) { $width = 660; $height = 700; } else if($nums ===3){ $width = 440; $height = 532; } foreach($attachments as $aid=>$attachment) { $bigimage = $_G['setting']['attachurl'].'forum/'.$attachment['attachment']; $thumbfile = 'image/'.helper_attach::makethumbpath($attachment['aid'], $width, $height); if(is_file($_G['setting']['attachdir'].$thumbfile)) { $thumbfile = $_G['setting']['attachurl'].$thumbfile; } else { $thumbfile = '/'.getforumimg($attachment['aid'], 0, $width, $height,'fixwr'); } if($attachment['width'] < $width) $thumbfile = $bigimage; $list[] = array('thumb'=>$thumbfile, 'attachment'=>$bigimage, 'aid'=>$attachment['aid']); $count++; if($count >= $maximgcount) break; } return $list; }
discuz图片处理缩略图显示