ESSAY / NOTE

浅谈thinkphp3.2.3使用支付宝快捷登陆接口

开发支付宝快捷登陆接口。我将接口的class类文件全部装载到了TP的Think类中 定义了namespace 为Think 然后我将在Controller实例化它!!!! 实例化都通了 function也都调用了。 但是总是出问题 = = 为啥捏 真的好奇怪 官方给的demo运行是 没问题的 这基本排除了是我服务器的问题。 那么我干脆不封在Think类中了 直接在控制器实例化!!!! 在这里小编感觉自己真的很笨,没有其他更好的办法了 只能这样 如下代码! public function alipay_login(){ require_once('./alipay/login/alipay.config.php'); //引入ALIPAY配置文件 require_once('./alipay/login/lib/alipay_notify.class.php'); $alipayNotify = new \AlipayNotify($alipay_config); $verify_result = $alipayNotify->verifyReturn(); if($verify_result) {//验证成功} } 这上面的代码 终于可以使用PHP正常的类了。。 那么问题来了 还是验证失败。。。 经过小编仔细的排查。。。发现GET中多了一些TP中的系统GET参数  支付宝类的运行方法我分析了一遍 他有些是直接把GET数组传进去的 废话不多说了 上代码 unset($_GET['m']);  = =真的好简单哦 删除多余的参数 那么最终的实现代码! public function alipay_login(){ require_once('./alipay/login/alipay.config.php'); //引入ALIPAY配置文件 require_once('./alipay/login/lib/alipay_notify.class.php'); unset($_GET['m']); $alipayNotify = new \AlipayNotify($alipay_config); $verify_result = $alipayNotify->verifyReturn(); if($verify_result) {//验证成功} } 不知不觉就搞定了,是不是最优的方案我也不知。。支付宝的开发文档很长 看的很头晕 只能自己分析代码了