重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
利用自增字段,把要查询的数据表的id设置为自增。查询数据时,order by id desc,取第一条就是最新的。
成都创新互联-专业网站定制、快速模板网站建设、高性价比阳曲网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式阳曲网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖阳曲地区。费用合理售后完善,十余年实体公司更值得信赖。
利用时间,要查询的数据表中增加时间字段,查询时,order by time desc,取第一条就是最新的。
有很多方法的呀,
1)字符串截取,$result
=
substr($whole,
0,
4);
2)用空格分割字符串到数组中:$ary
=
explode('
',
$whole);
$result
=
$ary[0]
$sql="select * from mytb order by time desc limit 5"
不足5条,没关系。
凡事多尝试。
试编写代码示例如下:
?php
//连接数据库
$db = new mysqli('localhost','test','test','test');
if ($db-connect_errno) {
printf("连接数据库失败: %s\n", $db-connect_error);
exit();
}
//对数据库根据时间字段按降序排序,并抽取前面的40条记录
$data = $db-query('select * from 数据表名 order by 时间字段名 desc limit 40');
$rows = $data-fetch_all(MYSQLI_ASSOC);
//随机生成 5 条记录数组
$rand_arr = array_rand($rows, 5);
//根据生成的随机数组,输出记录
for($i=0;$i5;$i++)
{
echo $rows[$rand_arr[$i]]['name'].' | '.$rows[$rand_arr[$i]]['description'].' | '.$rows[$rand_arr[$i]]['update_time'].'br/';
}
?
示例运行截图:
用js的setInterval写一个定时器,每隔5分钟,使用ajax请求一次数据,
本人用ThinkPHP3.2,今天正在开发一个需要分组显示的功能,可是从数据库中把相应数据读取后直接用group分组,结果每组显示的是最老的记录,我的需求是要显示每组的最新记录。在网上大搜一翻后,未果,本人决定自行研究,现将方法记录于此以防遗忘。
其实很简单,以供就两步:
第一步:
将符合条件的数据全部取出,暂不用group分组,作为子查询:
[php] view plain copy
$subQuery = $model-field('id,name')-table('tablename')-where($where)-order('time desc')-select(false);
第二部:
利用子查询进行查询分组
[php] view plain copy
$model-table($subQuery.' a')-group('field')-select();span style="font-family: Arial, Helvetica, sans-serif;" /span
好了,思路就是这样。希望对大家有帮助!