帝国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]
- 上一篇
帝国整合discuz7.2后积分同步的问题
在DZ里改变积分,帝国该帐号的积分发生变化。但在帝国后台改变帐号(点数)积分,,,在DZ里没变化,且再回到帝国,积分又回到原来的数值。我在万能会员接口里设置了积分字段为:extcredits2 即可解决!
- 下一篇
帝国序号标签补零,位数不足前面加0补足
帝国灵动标签为<?=$bqno?>输出效果 1 2 3 4 5 6 7 8 9 10 11 12补零后写法<?=sprintf("%02d", $bqno)?>输出效果 01 02 03 04 05 06 07 08 09 10 11 12补俩个零写法<?=sprintf("%03d", $bqno)?>输出效果 001 002 003