| 项目 |
产品1 |
产品2 |
产品3 |
产品4 |
{c$compare_aids [tclass=functions/] [limits=100/] [cols=1/]
[func=
global $db,$tblprefix;
$num = 4;//对比文档数
$addid = '{$addid}';
$arr1 = explode('_',$addid);
$chid = max(0,intval($arr1[0]));
if(empty($chid) || empty($arr1[1])) return array();
$arr2 = explode(',',$arr1[1]);
$aids = array();
$i = 0;
foreach($arr2 as $v){
if($i >= $num) continue;
if($v = max(0,intval($v))) $aids[] = $v;
$i ++;
}
unset($arr1,$arr2);
if(!$aids) return array();
$fields = read_cache('fields',$chid);
$items = array();
$j = -1;
foreach($fields as $k => $v){
$j ++;
$items['cnt_head'][$j] = $v['cname'];
}
for($i=0;$i<$num;$i++){
$item = array();
if($aid = @$aids[$i]){
$item = $db->fetch_one("SELECT a.*,c.* FROM ".$tblprefix."archives AS a LEFT JOIN ".$tblprefix."archives_$chid AS c ON (c.aid=a.aid) WHERE a.aid=$aid");
arc_parse($item);
foreach($item as $k => $v){
if($fields[$k]["datatype"] == "select" || $fields[$k]["datatype"] == "mselect"){
$queryitems = explode(" ",$v);
$item[$k] = '';
foreach($queryitems as $qv){
$fieldsitems = u_fields_options($chid,$k,0);
foreach($fieldsitems as $fv){
if($fv['value'] == $qv) $item[$k] .= "$fv[title] ";
}
}
}
}
}
$j = -1;
foreach($fields as $k => $v){
$j ++;
u_handel($item,$k,$v['datatype']);
$items['cnt_'.$i][$j] = empty($item[$k]) ? '-' : $item[$k];
}
}
$items = uarray_flip_keys($items);
return $items;
function uarray_flip_keys($arr) {
$arr2 = array();
$arrkeys = array_keys($arr);
list(, $first) = each(array_slice($arr, 0, 1));
if($first) {
foreach($first as $k=>$v) {
foreach($arrkeys as $key) {
$arr2[$k][$key] = $arr[$key][$k];
}
}
}
return $arr2;
}
function u_handel(&$item,$ename,$datatype){
if($datatype == 'image'){
global $cms_abs;
$item[$ename] = $item[$ename] ? '
' : '';
}elseif($datatype == 'date'){
$item[$ename] = $item[$ename] ? date("Y-m-d",$item[$ename]) : '';
}
}
/]
}
| {$cnt_head} |
{$cnt_0} |
{$cnt_1} |
{$cnt_2} |
{$cnt_3} |
{/c$compare_aids}
{tpl$web_foot_1}