新闻详情

新闻详情

首页 / 资讯中心 / 详情

php编写缓存微信access_token到本地脚本示例

发布时间:2026/11/15 19:43:06来源:尧图网络
php编写缓存微信access_token到本地脚本示例
access_token存储更新access_token 的存储至少要保留 512 个字符空间access_token 的有效期目前为 2 个小时需定时刷新重复获取将导致上次获取的 access_token 失效并且每天获取的频次有限所以需要进行本地缓存或者缓存到数据库进行使用而不是每次调用接口都获取access_token获取access_token并缓存到本地access_token.php文件封装函数12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273?php// APPID$APPIDxxx;// APPSECRET$APPSECRETxxx;// 缓存文件路径$TOKEN_FILEaccess_token.php;// 刷新 Access_Token 的函数functionrefreshAccessToken($appid,$appsecret) {// 官方接口$urlhttps://api.weixin.qq.com/cgi-bin/token?grant_typeclient_credentialappid$appidsecret$appsecret;// 发起请求$ch curl_init();curl_setopt($ch, CURLOPT_URL,$url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);// 结果$response curl_exec($ch);curl_close($ch);// 解析结果$data json_decode($response, true);if(isset($data[access_token])) {// 返回access_tokenreturn$data[access_token];}else{// 解析失败returnfalse;}}// 从缓存文件中获取 Access_Token 和过期时间戳functiongetAccessTokenFromCache($tokenFile) {// 判断缓存文件是否存在if(file_exists($tokenFile)) {// 如果缓存文件存在$tokenDatainclude($tokenFile);if($tokenDatais_array($tokenData) isset($tokenData[access_token]) isset($tokenData[expires_at])) {// 返回access_tokenreturn$tokenData;}}}// 更新缓存文件中的 Access_TokenfunctionupdateAccessTokenCache($tokenFile,$access_token,$expires_in) {// 提前一分钟刷新$expires_at time() $expires_in- 60;// 生成缓存文件$tokenData?php\nreturn array(access_token $access_token, expires_at $expires_at);\n;file_put_contents($tokenFile,$tokenData);}// 获取当前时间$current_time time();// 从缓存文件中获取 Access_Token 和过期时间戳$tokenData getAccessTokenFromCache($TOKEN_FILE);// 未过期if($tokenData$tokenData[expires_at] $current_time) {// 使用缓存的 Access_Token$access_token$tokenData[access_token];// 输出已缓存的access_tokenecho缓存的Access_Token: $access_token\n;}else{// 刷新 Access_Token$access_token refreshAccessToken($APPID,$APPSECRET);// 获取成功if($access_token) {// 输出新的access_tokenecho新的Access_Token: $access_token\n;// 更新缓存文件updateAccessTokenCache($TOKEN_FILE,$access_token, 7200);}else{// 刷新失败echoAccess_Token刷新失败\n;}}?总结在以上脚本中加载这个脚本会立刻读取本地access_token.php文件如果存在这个文件就解析这个文件的内容读取里面的access_token和过期时间如果过期了就直接调用请求接口获取信的access_token并更新文件如果没有过期直接使用access_token.php文件里面的access_token作为业务需要。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/15 4:54:16

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/15 2:04:12

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/14 10:11:15

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/14 17:14:38

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/14 16:35:50

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/15 4:06:36

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉