帝国cms比较高效的随机调用方法
有人喜欢用ORDER BY RAND()随机调用,随机调用是最耗资源的一种调用方式,信息数在1万以上随机调用就开始影响速度。使用时建议慎之又慎。如果确实要使用,可以用下面思路:先用php随机出信息ID,然后SQL调用用id in (php随机的……
有人喜欢用ORDER BY RAND()随机调用,随机调用是最耗资源的一种调用方式,信息数在1万以上随机调用就开始影响速度。使用时建议慎之又慎。
如果确实要使用,可以用下面思路:
先用php随机出信息ID,然后SQL调用用id in (php随机的ID列表)
调用举例:
<?php
$randnum=10; //随机数量
$randids='';
$randdh='';
for($i=1;$i<=$randnum;$i++)
{
$randids.=$randdh.rand(1,100000); //1为最小ID,100000为最大ID
$randdh=',';
}
?>
[e:loop={栏目ID,显示条数,操作类型,只显示有标题图片,"id in ($randids)"}]
模板代码内容
[/e:loop]
- 上一篇
帝国CMS教程删除tags标签空
修改的文件 e/class/t_functions.php$str.=$jg.'<a href="'.$tagsurl.'" target="_blank">'.$r[$i].'</a>'.$br; $jg=$br?'':$showjg; /* 改成 */ if(!empty($r[$i]))
- 下一篇
帝国cms会员中心控制面板不同会员类型出现不同投稿栏目
比如招聘和求职,企业会员只出招聘,普通会员只出求职<?php$modsql=$empire->query("select mid,qmname from {$dbtbpre}enewsmod where usemod=0 and showmod=0 and qenter<>'' order by myorder,mid");while($m