当前位置:首页 > 程序心得 > 正文内容

PHP7 微信支付回调失败 解决

admin9年前 (2017-02-08)程序心得1759

升级完PHP7 发现微信支付回调失败。原来是 $GLOBALS['HTTP_RAW_POST_DATA'];没有定义的问题。php7 移除了这个全局变量。

问题代码如下:

微信API :WxPay.Api.PHP

[plain] view plain copy 在CODE上查看代码片派生到我的代码片
  1. public static function notify($callback, &$msg)  

  2.     {  

  3.         //获取通知的数据  

  4.         $xml = $GLOBALS['HTTP_RAW_POST_DATA'];//这里在php7下不能获取数据,使用 php://input 代替  

  5.         if(!$xml){  

  6.             $xml = file_get_contents("php://input");  

  7.         }  

  8.         //如果返回成功则验证签名  

  9.         try {  

  10.             $result = WxPayResults::Init($xml);  

  11.         } catch (WxPayException $e){  

  12.             $msg = $e->errorMessage();  

  13.             return false;  

  14.         }  

  15.           

  16.         return call_user_func($callback, $result);  

  17.     }  


附加tcpdump抓包命令:tcpdump -i em2 -vnn port 80 -w xxx.cap

解析工具wireshark

分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:https://yuyunhe.cn/index.php/post/223.html

分享给朋友:

“ PHP7 微信支付回调失败 解决” 的相关文章

月薪3万的程序员都避开了哪些坑

月薪3万的程序员都避开了哪些坑

程序员薪水有高有低,有的人一个月可能拿30K、50K,有的人可能只有2K、3K。同样有五年工作经验的程序员,可能一个人每月拿20K,一个拿5K。是什么因素导致了这种差异?我特意总结了容易导致薪水低的九大行为表现,避开这些大坑,你就离高薪不远了。习惯即刻回报他不懂得只有春天播种,秋天才会有收获。刚刚付...

SVN Skipped 'xxx' -- Node remains in conflict 错误的解决办法

svn提交发现错误#cd /home/svn/app/# svn upUpdating '.':Skipped 'xxx' -- Node remains in conflictAt revision 1054.Summary of conflicts: ...

Thinkphp3.2.x 多图上传几个注意点

1、<form enctype="multipart/form-data">2、<form enctype="multipart/form-data">3、<input type="file...

解决在微信内分享第三方链接标题、图片、摘要、链接等问题

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> <script> var imgUrl = docum...

多行文字溢出[...]的实现(text-overflow: ellipsis)

多行文字溢出[...]的实现(text-overflow: ellipsis)

对于单行文字, 很简单. Css代码  .oneLine {      width: 200px;      overflow:&...

css做屏幕适配

CSS判断不同分辨率浏览器(显示屏幕)显示不同宽度布局CSS3技术支持IE6到IE8。将用到css3 @media样式进行判断,但IE9以下版本不支持CSS3技术,这里DIVCSS5给大家介绍通过JS实现低版本的浏览器也支持CSS3实现实用布局CSS DIV网页布局中当分辨率小于等于1024px(像...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。