CAttribute->Items, $attlist);
extract($ctag->CAttribute->Items, EXTR_SKIP);
$totalrow = $row;
$revalue = '';
$equery = "SELECT * FROM `#@__flinktype` order by id asc limit 0,$totalrow";
if (trim($ctag->GetInnerText()) == '') $innertext = "
[field:typename /]";
else $innertext = $ctag->GetInnerText();
if (!isset($type)) $type = '';
$dtp = new DedeTagParse();
$dtp->SetNameSpace("dede", "{", "}");
$dtp->LoadString($innertext);
$dsql->SetQuery($equery);
$dsql->Execute();
$rs = '';
$row = array();
while ($dbrow = $dsql->GetObject()) {
$row[] = $dbrow;
}
$dedecms = new stdClass;
$dedecms->id = 999;
$dedecms->typename = '织梦链';
if ($type == 'dedecms') $row[] = $dedecms;
foreach ($row as $key => $value) {
if (is_array($dtp->CTags)) {
$GLOBALS['envs']['flinkid'] = $value->id;
foreach ($dtp->CTags as $tagid => $ctag) {
$tagname = $ctag->GetName();
if ($tagname == "flink") $dtp->Assign($tagid, lib_flink($ctag, $refObj));
}
}
$rs = $dtp->GetResult();
$rs = preg_replace("/\[field:id([\/\s]{0,})\]/isU", $value->id, $rs);
$rs = preg_replace("/\[field:typename([\/\s]{0,})\]/isU", $value->typename, $rs);
$revalue .= $rs;
}
return $revalue;
}