php局部静态化用什么,小蚂蚁学习页面静态化(3)——页面静态化中局部动态化案例实现...

说白了,其实就用到了一个知识点——ajax。在静态化页面中使用ajax动态获取数据库中的数据,写入到静态化页面中相应的位置即可。虽然这些代码在平时的工作中都写烂了,但我还是决定在博客中重新写一遍,不要问我为什么,周日,不!上!班!呵呵呵呵……

生成静态化页面的脚本

//首先判断是否有静态文件,并且文件的最新修改时间到现在是否大于20秒

if(is_file('./text.php') && time()-filemtime('./text.php') <= 20){

//条件成立,将已经生成的静态文件输出给用户

include_once('./jingtai.php');

}else{

//条件不成立,重新走数据库,获取数据,分配模板,输出内容

$arr    =   array(

0=>array('title'=>'这里是第一个标题'),

1=>array('title'=>'这里是第二个标题'),

2=>array('title'=>'这里是第三个标题'),

3=>array('title'=>date('Y-m-d H:i:s'))

);

//缓冲区必须要在输出之前开启

ob_start();

//输出模板

include_once('./template.php');

//输出内容的同时生成静态文件,注意使用的函数是ob_get_contents();

file_put_contents('./jingtai.php', ob_get_contents());

}

?>

2.准备一个ajax请求的脚本,用于返回数据

//去数据库中拿到一个二维数组

$arr=array(

0=>array('title'=>'动态获取的第一个标题'),

1=>array('title'=>'动态获取的第二个标题'),

2=>array('title'=>'动态获取的第三个标题'),

3=>array('title'=>date('Y-m-d H:i:s'))

);

//把获取到的数组返回

show($code=1,$arr);

function show($code=0,$data=null){

//拼接成一个数组,code表示状态码,data是数据

$msg=array(

'code'=>$code,

'data'=>$data

);

//json化之后返回数据

echo json_encode($msg);

}

?>

3.准备一个模板文件,引入jQuery文件,使用jQuery来实现ajax非常的简单,写入ajax代码。

html>

<?php  foreach ($arr as $key => $value) { ?>

<?php  echo $value['title'] ?>

//使用ajax

$.ajax({

type:'POST',

url: "./text.php",

dataType:'json',

success: function(result){

//根据code的值可以在这里做一些判断,让程序更健壮。

//准备一个空的字符串

var html='';

//遍历data的值

$.each(result.data,function(key,value){

//拼接出来需要的数据

html +='

'+value.title+'';

});

//把拼接出来的字符串,写入到ul中,这就ok了

$('#ajax').html(html);

}

});

OK,搞定    d=====( ̄▽ ̄*)b

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值