php定时刷新token,微信网页开发,获取access_token并设置定时刷新,PHP

原理:用微信公众号文档的教程获取access_token,编写php脚本,定时刷新,并将值存入数据库,需要用的话就直接从数据库下载,不必再次获取access_token的值。

直接上代码

第一段代码,根据微信公众号提供的教程,获取access_token的值。<?php

$token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=此处为你的APPID&secret=此处为你的APP密码";

$res = file_get_contents($token_access_url);

$result = json_decode($res, true); //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量

$access_token = $result['access_token'];

// echo $access_token;

?>

第二段代码。将值存入数据库并定时刷新<?php

header("Content-type:text/html;charset=utf-8");

$time=1.8*60*60;//此处设置刷新时间,我设置的是1.8小时,因为设置两小时的话可能会有延迟,导致业务无法进行,尽管微信公众号规定到期后五分钟,新旧access_token都可以使用

$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//当前文件的url

include_once 'access_token_yuanshishuju.php';//此处插入第一段获取access_token的php文件

include_once 'coom.php';//此处插入mysql连接设置文件

mysqli_query($conn , "set names utf8");

$sql = "UPDATE 表名

SET 字段名= '$access_token'

WHERE id=1";

mysqli_select_db( $conn, '数据库名' );

$retval = mysqli_query( $conn, $sql );

if(! $retval )

{

die('无法更新数据: ' . mysqli_error($conn));

}

echo "数据更新成功\n";

mysqli_close($conn);//access_token的值存入数据库

sleep($time);

file_get_contents($url);//此处设置定时刷新,需打开一次该文件,打开后会一直显示刷新状态,然后关闭就行了 ,会一直自己运行,修改本文件后需再一次打开本文件,保证一直刷新

?>

第三段代码,从数据库获取access_token的值<?php

include_once 'coom.php';//数据库连接设置

mysqli_query($conn , "set names utf8");

$sql = 'SELECT 字段名

FROM 表名

where id = 1';

mysqli_select_db( $conn, '数据库名' );

$retval = mysqli_query( $conn, $sql );

if(! $retval )

{

die('无法查询数据: ' . mysqli_error($conn));

}

$row = mysqli_fetch_array($retval, MYSQL_ASSOC);

$access_token = $row['access_token'];//获取该值

mysqli_close($conn);

// echo $access_token;

?>

有不明白的,可以留言,大家一起进步。

这种PHP定时任务的方法不好用,请移步后更新的windows系统定时任务方法

点击进入

PHP,window系统定时任务,解决PHP文件定时执行问题

或者复制链接进入

https://blog..net/weixin_41797287/article/details/80346013

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值