";
$data = getCurl($url); //通过自定义函数getCurl得到https的内容
$resultArr = json_decode($data, true); //转为数组
$accessToken=$resultArr["access_token"]; //获取access_token
//echo $accessToken."
";
if (!empty($action_name)){
$access_token=$accessToken; //获取access_token
$json_url='http://api.weixin.qq.com/cgi-bin/qrcode/create?access_token='.$access_token;
//数据库里查询最后生成一个编号
//$now_secne_id=M('erweima')->where(array('token'=>$this->token))->order('scene_id desc')->getField('scene_id');
$now_secne_id=0;
//新生成在最后一个编辑上加1
$start_secne_id=intval($now_secne_id)+1;
$end_secne_id=intval($now_secne_id)+intval($create_num);
$n=0;
for($i=$start_secne_id;$i<=$end_secne_id;$i++){
$curl_data='';
if($action_name=='QR_SCENE'){
//临时 post的json数据
$curl_data='{"expire_seconds": 1800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": '.$i.'}}}';
}
if($action_name=='QR_LIMIT_SCENE'){
//永久 post的json数据
$curl_data='{"action_name": "QR_LIMIT_SCENE", "action_info": {"scene": {"scene_id": '.$i.'}}}';
}
$json_info=api_notice_increment($json_url,$curl_data);
echo $json_info;
/*
$json_info=json_decode(api_notice_increment($json_url,$curl_data),true);
//这里代表生成成功,记录数据以便插入到数据库,方便以后统计查找
if($json_info['errcode']!=40013){
echo $json_info['ticket']."";
echo $accessToken."
";
echo $json_info['ticket']."
";
echo $json_info['url']."
";
echo $i."
";
echo $json_info['expire_seconds']."
";
echo $action_name."
";
/*
$data[$n]['token']=$this->token;
$data[$n]['tiket']=$json_info['ticket'];
$data[$n]['url']=$json_info['url'];
$data[$n]['scene_id']=$i;
$data[$n]['expire_seconds']=$json_info['expire_seconds'];
$data[$n]['action_name']=$action_name;
$data[$n]['remark']='';
$data[$n]['createtime']=time();
$n++;
}else{
echo '操作失败
';
}
*/
}
}
function getCurl($url){//get https的内容
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//不输出内容
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$result = curl_exec($ch);
curl_close ($ch);
return $result;
}
function dataPost($post_string, $url) {//POST方式提交数据
$context = array ('http' => array ('method' => "POST", 'header' => "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) \r\n Accept: */*", 'content' => $post_string ) );
$stream_context = stream_context_create ( $context );
$data = file_get_contents ( $url, FALSE, $stream_context );
return $data;
}
function api_notice_increment($url, $data){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt( $ch , CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8'));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_AUTOREFERER,true);
$content = curl_exec($ch);
$info = curl_getinfo($ch,CURLINFO_EFFECTIVE_URL);
$code = curl_getinfo($ch,CURLINFO_HTTP_CODE);
curl_close($ch);
if($code == "200"){
return $content;
}else{
return "错误码:".$code;
}
}
?>