帝国cms教程

分享一段帝国CMS高效随机调用代码函数

我的站长站 2020-09-22 人阅读

帝国cms随机调用用’rand()’参数就可以了。

SQL随机调用方法

[e:loop={'select * from [!db.pre!]ecms_news where checked=1 order by rand() desc  limit 10',10,24,0}] 
<li><a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> </li>
[/e:loop]

灵动标签随机调用方法

[e:loop={'selfinfo',8,0,0,'','rand()'}]
<li><a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> </li>
[/e:loop]

下面这段是官方给出大数据高效随机调用方法,先用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)"}]
<li><a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> </li>
[/e:loop]

不过这段中的调用数量是固定死的,不方便多次调用,我的站长站封装成函数方法。

高效随机调用函数

<?php
$nuber=$empire->gettotal('select count(*) as total from phome_ecms_news');
function rands($num,$nubers){
$randnum=$num;
$randids='';
$randdh='';
for($i=1;$i<=$randnum;$i++){
$randids.=$randdh.rand(1,$nubers);
$randdh=',';
}
$allstr.=$randids;
    echo $allstr;
}
?>

首先查询所有信息总数,然后在赋值随机数量。

这段代码只需要写一次,可以重复多次调用。

调用方法

<?=rands(10,$nuber)?>

10代表调用10个,调用多少改成多少数字。

附上灵动标签的调用方法:

[e:loop={0,1,3,0,"id in ('rands(1,$nuber)')"}]
<li><a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> </li>
[/e:loop]


相关推荐
  • 帝国CMS调用方法
  • 帝国CMS函数
  • 帝国cms随机
  • 帝国CMS调用栏目自定义字段方法

    帝国CMS调用栏目自定义字段方法说明:封面模板,列表模板,内容模板都可以用,且调用方式都是一样的调用标签:<?=ReturnClassAddField(0,&#39;自定义字段&#39;)?>调用多个:<?=$value=ReturnClassAddField(1,&#39;自定义字段1,自定义字段2&#39;)?>取值:<?=$val...

    帝国cms教程 157 4年前
  • 帝国CMS新手教程调用栏目别名

    帝国CMS调用网站标题灵动标签调用网站标题:<?=$public_r[sitename]?> 帝国CMS标签调用网站标题:[!--pagetitle--] 帝国CMS调用栏目别名: <?=$class_r[$GLOBALS[navclas

    帝国cms教程 275 11年前
  • 帝国CMS调用网站标题的方法

    帝国CMS_调用网站标题的方法方法1: [!--pagetitle--]方法2:<?=$public_r[sitename]?>

    帝国cms教程 379 11年前
  • 二次开发中常用的过滤函数

    (1)、数字型变量可以用(int)或intval函数处理,例子:$page=(int)$_GET[&#39;page&#39;];或$page=intval($_GET[&#39;page&#39;]);(2)、带小数点的数字型变量可以用(float)或floatval函数处理,例子:$money=(float)$money;或$money=floatval($money);(3)、...

    帝国cms教程 223 5年前
  • 帝国CMS在文章内容页添加百度是否已收录查询函数功能

    后台帝国CMS收录查询功能截图这个功能之前我的站长站www.wdzzz.com有发过,这次是利用帝国CMS函数的方法。[xxid]17,497[/xxid]找到e/class/userfun.php,在里面添加如下代码://监测百度是否收录function okBaidu($url){$url=&#39;http://www.baidu.com/...

    帝国cms教程 252 5年前
  • 评论时间显示刚刚发布插件
    评论时间显示刚刚发布插件

    使用一个时间转换函数,在时间输出到页面的时候转换一下即可。function TimeTurner($time) {$minute = date("H:i",$time); $hour = date("H:i",$time); $alltime = date...

    帝国cms插件 493 10年前
  • 帝国CMS灵动标签随机调用方法

    帝国CMS灵动标签随机调用用到了rand(),如果数据很大不推荐使用rand()随机调用,因为速度非常缓慢。网站中只是少部分使用,或者需要随机调用的数据不多,可以试试。[e:loop={6,15,0,1,rand()}]<li><a href="<?=$bqsr[&#39;titleurl&#39;]?>" target="_blank...

    帝国cms教程 14 3个月前
  • 帝国CMS修改上传附件名称为原名称加随机码的方法

    帝国CMS上传附件原名称为Test.apk,上传后的文件名:Test_486453473f66d07e393bb0159eff5618.apk,现在想改成原名称加随机码的方法。修改方法1、修改文件:/e/class/connect.php,查找如下代码:$r[filetype]=GetFiletype($file_name);在下面加入如下代码:$...

    帝国cms教程 66 1年前
  • 帝国cms随机缩略图方法

    灵动标签调用方法[e:loop={591,6,0,0}] <?php if(!$bqr[titlepic])$bqr[titlepic]="/skin/news/".rand(1,10).".jpg"; $resizeimgurl=sys_ResizeImg($bqr[titlepic],210,125,1,&#39;list_&#39;.$bqno); echo"<img src...

    帝国cms教程 81 3年前
最新更新