最近要做支付对账,即检查第三方支付与数据库中账单是否一一对应,涉及到微信对账单的处理,微信账单接口返回为一个字符串类似如下结果:

程序需要实现的功能就是从这个字符串从提取每一笔订单中的有效信息,参考代码如下:

function deal_wechat_return_result($reponse)

{

$result = array();

$reponse = str_replace(","," ",$reponse);

$reponse = explode("`",$reponse);

$total_order_count =( count($reponse) - 6 ) / 24;

for($i = 0; $i< $total_order_count; $i++)

{

$base_index = 24 * $i;

$result[$reponse[$base_index + 7]] = array(

'wechat_order_no' => $reponse[$base_index + 6],

'order_count' => $reponse[$base_index + 13],

'order_discount' => $reponse[$base_index + 23]

);

}

return $result;

}

主要的思路是微信账单返回的结果格式是固定的,可以用 '`' 实现字符串的分割,然后每 24 个 字段为一个订单的描述信息,最后 6 个字段为账单的汇总信息。因此通过 for 循环就可以遍历整个账单,代码里面只取了我需要的字段,如果还需要其它的字段可按照此格式自行加入即可。

代码还有以下几点有待完善:

1. 没有考虑字符串特别大的情况,可能会导致 php 进程分配的内存耗尽,对于普通的商户订单,每天成交量不是特别大的情形是够用的。

2. 默认了微信返回的格式是固化的,其实可以根据微信返回的字符串头和尾进行动态的匹配。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

php 抓取微信聊天记录,php提取微信账单的有效信息相关推荐

  1. python excel 微信_Python Excel微信数据转换 分析提取微信零钱数据

    微信数据转换 分析提取微信零钱数据 # 微信数据转换 def wxProcessDo(total_list, begin, companyName, accountingTitle): # 期初22. ...

  2. fiddler 抓取手机上点击微信公众号的链接

    上一篇讲到手机自动点击微信公众号的文章 这里看看怎么获取微信公众号文章的链接: 下载 Filddler 软件,官网:https://www.baidu.com/link?url=PwyEnPhQeT7 ...

  3. fiddler抓取不了PC端微信小程序的包解决方法

    fiddler抓取不了微信小程序的包 最近突然遇到微信抓取不到小程序包,之前都是好的,但突然就凉凉了,经过不懈的查找终于在某个大佬的文章找到解决方法.原址在这里:https://mbd.baidu.c ...

  4. 微信聊天记录数据提取并分析

    项目背景: 公司有一部手机,这个手机专门用微信群拉客户的.手机里微信群聊天记录很多,想把这些聊天记录提取出来分析一下有用的信息. 查找一下 首先看一下有没有人之前做个这个项目,如果有的话就不用浪费时间 ...

  5. python自动抓取聊天群内容_python微信聊天机器人改进版,定时或触发抓取天气预报、励志语录等,向好友推送...

    最近想着做一个微信机器人,主要想要实现能够每天定时推送天气预报或励志语录,励志语录要每天有自动更新,定时或当有好友回复时,能够随机推送不同的内容.于是开始了分析思路.博主是采用了多线程群发,因为微信对 ...

  6. html 抓取移动,网页采集提取数据教程,以自定义抓取方式为例 - 八爪鱼采集器...

    网页上的数据类型十分丰富:文本.图片.链接.源码等.在数据采集过程中,不同类型的数据类型,对应的抓取方式是不同的.本文将讲解常见的数据类型与其抓取方式. 示例网址:https://movie.doub ...

  7. Python爬虫之requests+正则表达式抓取猫眼电影top100以及瓜子二手网二手车信息(四)...

    requests+正则表达式抓取猫眼电影top100 一.首先我们先分析下网页结构 可以看到第一页的URL和第二页的URL的区别在于offset的值,第一页为0,第二页为10,以此类推. 二.< ...

  8. java平台利用jsoup开发包,抓取优酷视频播放地址与图片地址等信息。

    /********************************************************************************************  * aut ...

  9. 麒麟系统查看微信聊天记录位置、微信收到的文件位置

    1.首先登录电脑微信 2.打开命令行先输入 sudo find / -mmin 1 | grep -v proc | grep wxid 不要按回车执行,等待1分钟左右不要执行其他动作 3.1分钟后通 ...

最新文章

  1. python namedtuple用法_Python的collections模块中namedtuple结构使用示例
  2. 什么是Express.js?
  3. python转行it好学吗-想转行学python过来人提醒大家几点
  4. Android 读取assets文件下的txt文件
  5. 给Apache虚拟主机增加端口的方法
  6. SpringSecurity分布式整合之验证认证的过滤器
  7. SaltStack的salt-ssh使用及LAMP状态设计部署
  8. 网上支付心案例payment
  9. codevs4203山区建小学
  10. jquery插件开发方法
  11. 群之脉PHP面试,面试问Redis集群,被虐的不行了......
  12. MATLAB TIFF转Shape、TIFF和Shape的读写
  13. ArcGIS——使用符号级别区分重叠的面图层
  14. linux 常用解压、压缩命令合集——筑梦之路
  15. [转]android 制作.9.png图片 解决图形变形问题
  16. 国开题库c语言,C语言-程序设计-阅读程序题库.资料大全及其答案.doc
  17. react前端ui的使用_使用React Morph变形UI过渡
  18. 谷粒商城renren-fast项目启动报错 wagon-maven-plugin docker-maven-plugin标红
  19. hbase 源码分析 (14) spit 过程
  20. mysql mklink_windows系统下的文件夹链接功能mklink/linkd

热门文章

  1. 餐厅点餐系统详细设计与系统实现
  2. 2PC和3PC的区别是什么?
  3. cmder waring conEmu binaries were marked as ‘Downloaded from internet‘
  4. 2013年第二季度总结报告
  5. 输入重启Ubuntu 语言栏不见了 解决办法
  6. linux 去掉文件的suid,Linux学习---文件特殊权限(SUID)
  7. 【Cxinny】前端面试题
  8. Hutchison反重力效应 -事实还是伪造?
  9. .net core vue可视化工作流引擎低代码快速开发框架RoadFlow - 设计概述
  10. Web 3D VS Native 3D是未来元宇宙