您的位置:首页 > 数据库

tp5 随机从数据库取数据方法(不重复)

2019-01-11 12:32 267 查看

1.封装方法

function getRandTable($nums, $tables)
{
$num = $nums;    //需要抽取的默认条数
$table = $tables;    //需要抽取的数据表
$pk = Db::name($table)->getPK();//获取主键
$countcus = Db::name($table)->field($pk)->select();//查询数据
$con = '';
foreach($countcus as $v=>$val){
$con.= $val[$pk].'|';
}
$array = explode("|",$con);// 拆分
$data = [];
foreach ($array as $v){
if (!empty($v)){
$data[$v]=$v;//循环健值
};
}
$a=array_rand($data,$num) ;//随机数组
$list = Db::name("$table")->where($pk,'in',$a)->select();
return json($list);
}

2.查询数据

$q =Db::name('cms_testdetail')->where('rand()')->limit(2)->select();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: