ThinkPHP框架下支付宝扫码支付报C方法重复定义的解决办法

因公司项目需求,要在APP客户端加入支付宝的扫码支付功能,特此进行下载研究。

具体文档说明请参见蚂蚁金服开放平台文档中心,以下为当面付的文档链接:
https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.mIUKYl&treeId=193&articleId=105072&docType=1#s1

对应的API及DEMO下载链接如下所示:(ps:具体从官方哪里下载的忘记了)

链接:http://pan.baidu.com/s/1eShygSy 密码:sow2

在demo中按照官方文档的指示修改对应的私钥、公钥什么的之后,就可以跑起来了。成功运行的返回结果如下图所示。其中的qr_code所对应的值就是你需要生产二维码的原始内容。

这边打个小广告,将对应的值粘贴到草料二维码官方(http://cli.im)即可生成对应的二维码,很是方便。

打开支付宝扫码,得到如下界面,即代表使用官方demo成功。

接下来就是重头戏了,需要将扫码支付的相关文件整合到ThinkPHP的框架中去,说干就干走起。

配置完成,跑起来。

一看发现是文件加载失败,根据提示去修改对应的位置即可。具体修改如下图所示,当然得根据你的实际情况进行修改。

再次运行起来,结果很令人失望,报了个

Cannot redeclare C() (previously declared in E:\wwwroot\bangni\Core\Common\functions.php:23)
的错误,尼玛居然和thinkPHP自带的C函数冲突了,这可怎么办...

然后想到的就是我天朝强大的百度

然而这些都没有解决所遇到的问题,没办法想到了最后一招那就是询问阿里客服。

最后在阿里客服的提示下我想到了thinkPHP类库,赶紧去查手册http://document.thinkphp.cn/manual_3_2.html#lib_extend


解决办法:

然后我就按照官方手册说法将阿里的扫码支付相关文件搁到Org第三方公共类库下,问题得以解决。

若还是存在,可直接修改该函数名称为任意名称,我一般修改为CC

在此非常感谢阿里的技术客服,谢谢
再次表示感谢,鞠躬

如果还有什么不明白的地方,欢迎加我QQ进行咨询,请注明技术咨询

本人QQ:980569038

也可以扫码本人微信:

本人原创,转载请注明出处?http://www.itinfor.cn/archives/821

若该文章对您有一定帮助,欢迎打赏

 

 

 

Tagged ,