php提取微信賬單的有效信息
最近要做支付對(duì)賬,即檢查第三方支付與數(shù)據(jù)庫(kù)中賬單是否一一對(duì)應(yīng),涉及到微信對(duì)賬單的處理,微信賬單接口返回為一個(gè)字符串類似如下結(jié)果:
程序需要實(shí)現(xiàn)的功能就是從這個(gè)字符串從提取每一筆訂單中的有效信息,參考代碼如下:
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; }
主要的思路是微信賬單返回的結(jié)果格式是固定的,可以用 '`' 實(shí)現(xiàn)字符串的分割,然后每 24 個(gè) 字段為一個(gè)訂單的描述信息,最后 6 個(gè)字段為賬單的匯總信息。因此通過(guò) for 循環(huán)就可以遍歷整個(gè)賬單,代碼里面只取了我需要的字段,如果還需要其它的字段可按照此格式自行加入即可。
代碼還有以下幾點(diǎn)有待完善:
1. 沒(méi)有考慮字符串特別大的情況,可能會(huì)導(dǎo)致 php 進(jìn)程分配的內(nèi)存耗盡,對(duì)于普通的商戶訂單,每天成交量不是特別大的情形是夠用的。
2. 默認(rèn)了微信返回的格式是固化的,其實(shí)可以根據(jù)微信返回的字符串頭和尾進(jìn)行動(dòng)態(tài)的匹配。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 微信企業(yè)轉(zhuǎn)賬之入口類分裝php代碼
- php實(shí)現(xiàn)微信公眾號(hào)企業(yè)轉(zhuǎn)賬功能
- PHP實(shí)現(xiàn)微信退款功能
- PHP實(shí)現(xiàn)微信申請(qǐng)退款功能
- PHP實(shí)現(xiàn)微信對(duì)賬單處理
- PHP APP微信提現(xiàn)接口代碼
- 基于php的微信公眾平臺(tái)開(kāi)發(fā)入門實(shí)例
- php判斷頁(yè)面是否是微信打開(kāi)的示例(微信打開(kāi)網(wǎng)頁(yè))
- PHP對(duì)接微信公眾平臺(tái)消息接口開(kāi)發(fā)流程教程
- php實(shí)現(xiàn)微信企業(yè)轉(zhuǎn)賬功能
相關(guān)文章
Laravel 自動(dòng)轉(zhuǎn)換長(zhǎng)整型雪花 ID 為字符串的實(shí)現(xiàn)
這篇文章主要介紹了Laravel 自動(dòng)轉(zhuǎn)換長(zhǎng)整型雪花 ID 為字符串的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10PHP編譯安裝時(shí)常見(jiàn)錯(cuò)誤解決辦法
這篇文章主要介紹了PHP編譯安裝時(shí)常見(jiàn)錯(cuò)誤解決辦法,本文涵蓋了PHP編譯安裝中的大多數(shù)錯(cuò)誤,同時(shí)給出解決方法,需要的朋友可以參考下2015-05-05PHP學(xué)習(xí)記錄之面向?qū)ο螅∣bject-oriented programming,OOP)基礎(chǔ)【接口、抽象類、靜態(tài)方法等
這篇文章主要介紹了PHP學(xué)習(xí)記錄之面向?qū)ο螅∣bject-oriented programming,OOP)基礎(chǔ),結(jié)合實(shí)例形式分析了PHP面向?qū)ο蟪绦蛟O(shè)計(jì)中接口、抽象類、靜態(tài)方法等相關(guān)概念、原理、用法與操作注意事項(xiàng),需要的朋友可以參考下2019-12-12php兩個(gè)多維數(shù)組組合遍歷的實(shí)例
下面小編就為大家?guī)?lái)一篇php兩個(gè)多維數(shù)組組合遍歷的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10PHP一個(gè)簡(jiǎn)單的無(wú)需刷新爬蟲(chóng)
今天小編就為大家分享一篇關(guān)于PHP一個(gè)簡(jiǎn)單的無(wú)需刷新爬蟲(chóng),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01PHP處理SQL腳本文件導(dǎo)入到MySQL的代碼實(shí)例
通常在制作安裝程式,數(shù)據(jù)備份程序的時(shí)候會(huì)要用到這樣的代碼,我看網(wǎng)上有是有不太多,而且有些也不是很好用,有時(shí)候這種代碼直接用現(xiàn)成的可以節(jié)省很多時(shí)間,那么我就從stackoverflow轉(zhuǎn)了一個(gè)過(guò)來(lái),需要的朋友可以參考下2014-03-03php文件服務(wù)實(shí)現(xiàn)虛擬掛載其他目錄示例
這篇文章主要介紹了php文件服務(wù)實(shí)現(xiàn)虛擬掛載其他目錄示例,需要的朋友可以參考下2014-04-04