php处理微信退款:订单金额或退款金额与之前请求不一致,请核实后再试问题

遇到的问题:个别退款出现 订单金额或退款金额与之前请求不一致,请核实后再试
解决方法:退款金额参数加上该函数 intval(strval($amount));

public function textWx()
{
    $order_info = db('order_superior')->where(['id'=>1242])->find();

    $order_info['amount_a'] = $order_info['amount'] * 100;
    $order_info['amount_b'] = intval($order_info['amount'] * 100);
    $order_info['amount_c'] = intval(strval($order_info['amount'] * 100));
    dump($order_info);die();
}   

输入的结果如下:
在这里插入图片描述
原因:php 浮点型运算丢失精度,float转换为int类型后导致最后一位数值对不上,所以需要intval(strval()) 转换金额数值

$result = $this->app->refund->byOutTradeNumber(
            $order_info['order_sn'],
            $s_order['refund_order_no'],
            intval(strval($order_info['amount']*100)),
            intval(strval($order_info['amount']*100)),
            [
                'refund_desc' => '订单退款',
                //'notify_url'  => '',//退款结果通知
            ]
        );
  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值