⑴ php微信扫码支付模式二可以在本地测试吗
不可以,有授权域名以及回调地址,本地调试不了,建议线上测试好,再开放!
⑵ php 怎么测试微信openid是否成功
//***方法一
获取code
这里是你的公众号的APPID&redirect_uri=
用户点击确认登录,自动跳转下面地址得到code
这个是你自己的跳转地址
?code=&state=123
后面的这个 ?code=……123 是微信自动跳转添加的,不是你自己加的
下面是PHP语言,写在getcode这个页面里
$code = $_GET['code'];//获取code
$weixin = file_get_contents("这里是你的APPID&secret=这里是你的SECRET&code=".$code."&grant_type=authorization_code");//通过code换取网页授权access_token
$jsondecode = json_decode($weixin); //对JSON格式的字符串进行编码
$array = get_object_vars($jsondecode);//转换成数组
$openid = $array['openid'];//输出openid
//***方法二
$appid = "公众号在微信的appid";
$secret = "公众号在微信的app secret";
$code = $_GET["code"];
$get_token_url = ''.$appid.'&secret='.$secret.'&code='.$code.'&grant_type=authorization_code';
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$get_token_url);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
$res = curl_exec($ch);
curl_close($ch);
$json_obj = json_decode($res,true);
//根据openid和access_token查询用户信息
$access_token = $json_obj['access_token'];
$openid = $json_obj['openid'];
$get_user_info_url = ''.$access_token.'&openid='.$openid.'&lang=zh_CN';
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$get_user_info_url);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
$res = curl_exec($ch);
curl_close($ch);
//解析json
$user_obj = json_decode($res,true);
$_SESSION['user'] = $user_obj;
print_r($user_obj);
⑶ phpstorm微信开发怎么调试
[ThinkPHP框架开启调试模式]
ThinkPHP有专门为开发过程而设置的调试模式,开启调试模式后,会牺牲一定的执行效率,但带来的方便和除错功能非常值得。
如何开启
开启调试模式很简单,只需要在入口文件中增加一行常量定义代码。在完成开发阶段部署到生产环境后,只需要关闭调试模式或者删除调试模式定义代码即可切换到部署模式。
<?php
// 开启调试模式
define('APP_DEBUG', true);
// 定义应用目录
define('APP_PATH', './Application/');
// 加载框架入口文件
require './ThinkPHP/ThinkPHP.php';
调试模式的优点在于:
开启日志记录,任何错误信息和调试信息都会详细记录,便于调试;关闭模板缓存,模板修改可以即时生效;
记录SQL日志,方便分析SQL;
关闭字段缓存,数据表字段修改不受缓存影响;严格检查文件大小写(即使是Windows平台),帮助你提前发现Linux部署可能导致的隐患问题;通过页面Trace功能更好的调试和发现错误;
[日志]
日志的处理工作是由系统自动进行的,在开启日志记录的情况下,会记录下允许的日志级别的所有日志信息。
框架默认是在调试模式下记录日志信息,如果需要在部署模式下开启日志记录,需要在配置中开启LOG_RECORD参数,以及可以在应用配置文件中配置需要记录的日志级别。日志的记录并非实时保存的,只有当当前请求完成或者异常结束后才会实际写入日志信息,否则只是记录在内存中。
'LOG_RECORD' => true, // 开启日志记录
'LOG_LEVEL' =>'EMERG,ALERT,CRIT,ERR', // 只记录EMERG ALERT CRIT ERR 错误手动记录日志
⑷ 如何调试微信接口代码 php
看下你给微信提供的php文件中的链接,里面有你的显示文件路径
⑸ 用thinkphp做一个微信上可以测试两个人之间亲密度的功能,哪位大神帮我提个思路,分享下相关代码,谢过先
这个估计够呛,亲密度分析需要结合用户的相关详细数据呢,比如说:置顶聊天、聊天频次等等这些,但是这些东西设计到用户隐私,官方是不会把这些数据心甘情愿的提供给你的。
⑹ PHP微信测试号验证服务器的时候接口配置提示配置成功但是没有得到url参数
建议你按照我的配置,再测试一下:
public function index(){
//获得参数 signature nonce token timestamp echostr
$nonce = $_GET['nonce'];
$token = 'weixin';
$timestamp = $_GET['timestamp'];
$echostr = $_GET['echostr'];
$signature = $_GET['signature'];
//形成数组,然后按字典序排序
$array = array();
$array = array($nonce, $timestamp, $token);
sort($array);
//拼接成字符串,sha1加密 ,然后与signature进行校验
$str = sha1( implode( $array ) );
if( $str == $signature && $echostr ){
//第一次接入weixin api接口的时候
//(第一次,有四个参数,signature、nonce、timestamp、echostr,第二次就没有echostr参数)
echo $echostr;
exit;
}else{
$this->reponseMsg();//接收事件推送并回复
}
}
⑺ php如何判断微信端打开的页面!
用$_SERVER['HTTP_USER_AGENT']用来检查浏览页面的访问者在用什么操作系统(包括版本号)浏览器(包括版本号)和用户个人偏好的代码。
在iPhone下,返回
Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2
在Android下,返回
Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
在PC下,返回
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36
代码
$client=$_SERVER['HTTP_USER_AGENT'];
//用php自带的函数strpos来检测是否是微信端
if(strpos($client,'MicroMessenger')===true){
echo"微信端";
}
⑻ 我已经编写好了php微信支付文件怎样去测试
花钱测试啊一次0.01就可以,我做微信支付的时候就是这么试的