采集数据和memchche的存储使用,分页展示
<?php
header('content-type:text/html;charset=utf-8');
//实例化memcache
$mem=new Memcache();
//链接
$mem->connect('127.0.0.1','11211');
$list=$mem->get('ceshi');
if(empty($list)){
$url="http://auto.baidu.com/";
$str=file_get_contents($url);
// echo $str;
$reg1='#<li class="sticky">.*</ul>.*</div>#isU';
preg_match($reg1,$str,$data);
// var_dump($data);
$reg2='#<li class="list"><h5><a href=".*" target="_blank" mon="a=1&p=1&z=daogou&pn=.*">(.*)</a></h5></li>#isU';
preg_match_all($reg2,$data[0],$arr1);
// var_dump($arr1);
unset($arr1[0]);//存入数据
$mem->set('ceshi',$arr1);
}
$list=$mem->get('ceshi');
// var_dump($list);die;
// $res=$list[0];
// var_dump($res);
$res=array();
foreach ($list as $key => $value) {
// var_dump($value);
$res=$value;
}
//var_dump($res);die;
//计算总条数
$count=count($res);
//设置每页显示条数
$length=3;
//总页数
$pagenum=ceil($count/$length);
// echo $pagenum;die;
$page=isset($_GET['page']) ? $_GET['page']:1;
//上一页
$prev=$page<1 ? 1:$page-1;
//下一页
$next=$page>$pagenum ? $pagenum:$page+1;
//设置偏移量
$offset=($page-1)*$length;
$list=array_slice($res,$offset,$length);
// mb_substr($list,);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
</head>
<body>
<table>
<tr>
<td>编号</td>
<td>新闻</td>
</tr>
<?php foreach($list as $k=>$v): ?><!-- mb_substr($v,'utf-8'),'.....' -->
<tr>
<td><?php echo $k+1; ?></td>
<td><?php echo mb_convert_encoding($v,'utf8','gb2312');?></td>
</tr>
<?php endforeach ?>
<tr>
<td>
<a href="qu_1">首页</a>
<!-- <a href="qu_<?php echo $prev; ?>">上一页</a>
<a href="qu_<?php echo $next; ?>">下一页</a>
<a href="qu_<?php echo $pagenum; ?>">尾页</a> -->
<a href="qu_<?php echo $prev; ?>">上一页</a>
<a href="qu_<?php echo $next; ?>">下一页</a>
<a href="qu_<?php echo $pagenum; ?>">尾页</a>
</td>
</tr>
</table>
</body>
</html>
采集数据和memchche的存储使用,分页展示的更多相关文章
- 服务追踪数据使用 RabbitMQ 进行采集 + 数据存储使用 Elasticsearch + 数据展示使用 Kibana
服务追踪数据使用 RabbitMQ 进行采集 + 数据存储使用 Elasticsearch + 数据展示使用 Kibana https://www.cnblogs.com/xishuai/p/elk- ...
- Can JavaScript connect with MySQL? 浏览器控制台的js采集数据结果持久化存储
浏览器控制台的js采集数据结果持久化存储 how to open a file in javascript https://developer.mozilla.org/en-US/docs/Web/A ...
- 基于PHP采集数据入库程序(一)
前几天有一朋友要我帮做一个采集新闻信息的程序,抽了点时间写了个PHP版本的,随笔记录下. 说到采集,无非就是远程获取信息->提取所需内容->分类存储->读取->展示 也算是简单 ...
- 大数据项目之_15_电信客服分析平台_01&02_项目背景+项目架构+项目实现+数据生产+数据采集/消费(存储)
一.项目背景二.项目架构三.项目实现3.1.数据生产3.1.1.数据结构3.1.2.编写代码3.1.3.打包测试3.2.数据采集/消费(存储)3.2.1.数据采集:采集实时产生的数据到 kafka 集 ...
- 01 Zabbix采集数据方式
Zabbix采集数据方式 1. zabbix采集数据方式: 基于专用agent 被监控的设备上面安装agent软件,这个agent必须在设备上面有采集数据的权限 基于SNMP, net-snmp ...
- [PHP自动化-进阶]001.CURL模拟登录并采集数据
引言:PHP可以通过libcurl实现模拟登录,提交数据,违法乱纪,烧杀抢虐等等事项. 简单说明一下"libcurl",补一下脑: libcurl目前支持http.https.ft ...
- 测试开发【提测平台】分享9-DBUntils优化数据连接&实现应用搜索和分页功能
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 从本期开始知识点讲以思维导图的形式给出,内容点会按照讲解-应用-展示的形式体现,这样会更清晰些. DBUntils连接池 在项目中链接数据 ...
- 利用DMA实现采样数据的直接搬运存储
尝试了下STM32的ADC采样,并利用DMA实现采样数据的直接搬运存储,这样就不用CPU去参与操作了. 找了不少例子参考,ADC和DMA的设置了解了个大概,并直接利用开发板来做一些实验来验证相关的操作 ...
- DMA实现采样数据的直接搬运存储
尝试了下STM32的ADC采样,并利用DMA实现采样数据的直接搬运存储,这样就不用CPU去参与操作了. 找了不少例子参考,ADC和DMA的设置了解了个大概,并直接利用开发板来做一些实验来验证相关的操作 ...
随机推荐
- eclipse下的反编译
Eclipse 安装反编译插件jadclipse(经验总结) 根据网上搜集的材料以及亲身安装测试,总结经验如下,希望能够帮助有需要的朋友们,本总结有助于朋友们少走弯路哦!jadclipse可以帮助查看 ...
- HIS-DELPHI-读取数据库配置
产品思维: 1.做成可配置的 2.模块化 医生会有自己熟悉的药品,数据里面药品太多,让医生选择不放便 所以可以让医生自己维护自己的药品模板数据 比如医生开了处方后,可以保存当前的处方到某个模板中,那么 ...
- linux密码的更改
找到UTF-8,在后面空格后输入init=/bin/sh 然后CHRL+X启动 进入到这个界面,输入mount -o remount,rw / 再输入touch / .autorelabel ,然后 ...
- python的各种编辑器-PyScripter、pycharm 、atom、vscode、Sublime Text等等
RT,本文主要列举python的各种编辑器-PyScripter.pycharm .atom.vscode.Sublime Text等等. PyScripter 开源 免费 windows only ...
- js回车动态添加表格,右键动态删除表格行
<script type="text/javascript" language="javascript">//屏蔽浏览器右键function sto ...
- 获取 view所在的VC
- (UIViewController*)viewController { for (UIView* next = [self superview]; next; next = next.superv ...
- 谈谈对hibernate的理解
它是ORM思想的一个实现,对JDBC进行了很好的封装,它通过配置使JavaBean对象和数据库表之间进行映射,并提供对增.删.改.查便利的操作方法,同时支持事务处理,它对数据库记录还提供了缓存机制,提 ...
- a primary example for Functional programming in javascript
background In pursuit of a real-world application, let’s say we need an e-commerce web applicationfo ...
- RS232,RS422串口标准小结
RS232和RS422都是广泛使用的异步串行接口标准.由于它们实现简单且占用IO口资源少,在低速传输下是不错的方案. RS232是单端走线,最高波特率为115200,传输最远距离不超过150米,它的逻 ...
- Spring学习笔记(1)——资源加载
<!-- 占坑,迟点补充底层原理 --> Spring支持4种资源的地址前缀 (1)从类路径中加载资源——classpath: classpath:和classpath:/是等价的,都是相 ...