您现在的位置是: 首页> PHP>PHP随机读取表格数据(Mysql) 所属分类:PHP

PHP随机读取表格数据(Mysql)

初柒先生 2019-10-10 22:47 php】 【mysql】 【thinkphp 225人已围观

简介用PHP随机读取表格数据,运用场景如下: (1)随机显示5条记录,即随机查询5条数据; (2)随机显示指定记录数范围的记录,例如:随机显示5-10条的随机记录数据。

用PHP随机读取表格数据,运用场景如下:

(1)随机显示5条记录,即随机查询5条数据;

因为是指定记录数,所以可以直接使用sql语句,如下:

$sql = "select * from 表名 order by rand() limit 5";

注:rand()是Mysql数据库的随机函数,用于随机查询。

(2)随机显示指定记录数范围的记录,例如:随机显示5-10条的随机记录数据。

因为记录数是随机,所以我们需要先确定记录数,在PHP中我们可以使用rand(min,max)函数获取随机记录数,而后再使用sql语句即可,如下:

$num = rand(5,10);
$sql = "select * from 表名 order by rand() limit $num";


例子,在Thinkphp5.1的应用。

控制器代码:

public function demo(){
	$sql = "select * from table_words order by rand() limit 5";
	$result = Db::query($sql);
	foreach($result as $obj){
		echo $obj['word'].'<br>';
	}
}

table_words表的sql语句:

DROP TABLE IF EXISTS `table_words`;
CREATE TABLE `table_words` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `cid` tinyint(2) DEFAULT NULL,
  `word` varchar(255) DEFAULT NULL,
  `note` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
  `sort` tinyint(3) NOT NULL DEFAULT '50' COMMENT '排序',
  `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态',
  `updatetime` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间戳',
  `createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间戳',
  `is_del` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标识',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

很赞哦! (0)

初柒先生 2019-10-10 22:47 php】 【mysql】 【thinkphp 225人已围观

站点信息

  • 建站时间:2019-09-04
  • 网站名称:初柒先生
  • 主题模板《今夕何夕》
  • 文章统计:299条
  • 文章评论:490条
  • 统计数据百度统计
  • 微信公众号:初柒先生(chuqi_sir)
  • 微信扫二维码,关注我们吧!
搜索历史:
0.091833s