tobess/laravel-pingpp 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tobess/laravel-pingpp

Composer 安装命令:

composer require tobess/laravel-pingpp

包简介

Pingpp wrapper for Laravel 5

README 文档

README

pingxx基于laravel5的封装

Latest Stable Version Total Downloads Latest Unstable Version License

配置方法

  1. composer.json里添加如下内容,并运行composer update:
{
    "require": {
        "tobess/laravel-pingpp": "dev-master"
    }
}
  1. app/config/app.php文件里的providers变量下添加Tobess\Pingpp\PingppServiceProvider::class,
  2. app/config/app.php文件里的aliases变量下添加'Pingpp' => Tobess\Pingpp\Facades\Pingpp::class,
  3. 运行php artisan vendor:publish生成配置文件
  4. 修改配置文件里面的2组key
  5. 若需回调验证,请填写public_key_path注意该处是路径!,这里参考官方已改为路径,同时当前会兼容旧版本配置文件
  6. 若需要使用商户身份验证,请填写private_key_path注意该处是路径! 线上生产环境建议配置.evn来配置生产环境

使用方法

use Pingpp;

class SomeClass extends Controller {
    
    public function someFunction()
    {
    	\Pingpp\Charge::create(
            array(
                // 请求参数字段规则,请参考 API 文档:https://www.pingxx.com/api#api-c-new
                'subject'   => 'Your Subject',
                'body'      => 'Your Body',
                'amount'    => $amount,                 // 订单总金额, 人民币单位:分(如订单总金额为 1 元,此处请填 100)
                'order_no'  => $orderNo,                // 推荐使用 8-20 位,要求数字或字母,不允许其他字符
                'currency'  => 'cny',
                'extra'     => $extra,
                'channel'   => $channel,                // 支付使用的第三方支付渠道取值,请参考:https://www.pingxx.com/api#api-c-new
                'client_ip' => $_SERVER['REMOTE_ADDR'], // 发起支付请求客户端的 IP 地址,格式为 IPV4,如: 127.0.0.1
                'app'       => array('id' => APP_ID)
            )
        );
    }
}
use Pingpp;

class SomeClass extends Controller {
    
    public function someFunction()
    {
    	Pingpp::RedEnvelope()->create([
            'order_no'  => '123456789',
	        'app'       => array('id' => 'APP_ID'),
	        'channel'   => 'wx_pub',
	        'amount'    => 100,
	        'currency'  => 'cny',
	        'subject'   => 'Your Subject',
	        'body'      => 'Your Body',
	        'extra'     => array(
	            'nick_name' => 'Nick Name',
	            'send_name' => 'Send Name'
	        ),
	        'recipient'   => 'Openid',
	        'description' => 'Your Description'
        ]);
    }
}

错误调用

当Pingpp调用发生错误的时候会return false,此时调用Pingpp::getError();返回具体错误内容。

接收 Webhooks 通知

直接调用Pingpp::notice(),若验证成功,会返回通知的array结构数据,若失败直接弹出错误回Pingpp。如果需要记录错误,请自行监听系统错误,详见Errors & Logging

感谢

感谢几位forked的同学的改进,当时写的很简单,无入侵式的写法,其实在接收webhooks方面,可以用Laravel自己的Events去监听处理,显得更Laravel风格。

tobess/laravel-pingpp 适用场景与选型建议

tobess/laravel-pingpp 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 0, 最近一次更新时间为 2017 年 09 月 28 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「laravel」 「laravel 5」 「pingpp」 「Pingxx」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 tobess/laravel-pingpp 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 tobess/laravel-pingpp 我们能提供哪些服务?
定制开发 / 二次开发

基于 tobess/laravel-pingpp 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 6
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-09-28