function getcurl($url,$data=array()){
$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_POST,1);//这一句是最主要的
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($data));$response=curl_exec($ch);$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);curl_close($ch);return $response;}
function sendMessage($token,$message){
$curl=curl_init();$url="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=$token";curl_setopt($curl,CURLOPT_URL,$url);curl_setopt($curl,CURLOPT_POST,1);curl_setopt($curl,CURLOPT_POSTFIELDS,$message);curl_exec($curl);}
function json_encodes($arr) {
$parts=array ();$is_list=false;//Find out if the given array is a numerical array
$keys=array_keys ( $arr );$max_length=count ( $arr )-1;if (($keys [0]===0)&&($keys [$max_length]===$max_length )) { //See if the first key is 0 and last key is length - 1
$is_list=true;for($i=0;$i
if ($i!=$keys [$i]) { //A key fails at position check.
$is_list=false;//It is an associative array.
break;}
}
}
foreach ( $arr as $key=>$value ) {
if (is_array ( $value )) { //Custom handling for arrays
if ($is_list)
$parts []=json_encodes ( $value );/*:RECURSION:*/
else
$parts []='"'.$key.'":'.json_encodes ( $value );/*:RECURSION:*/
} else {
$str='';if (!$is_list)
$str='"'.$key.'":';//Custom handling for multiple data types
if (is_numeric ( $value )&&$value<2000000000)
$str.=$value;//Numbers
elseif ($value===false)
$str.='false';//The booleans
elseif ($value===true)
$str.='true';else
$str.='"'.addslashes ( $value ).'"';//All other things
//:TODO: Is there any more datatype we should be in the lookout for? (Object?)
$parts []=$str;}
}
$json=implode ( ',',$parts );if ($is_list)
return '['.$json.']';//Return numerical JSON
return '{'.$json.'}';//Return associative JSON
}
$url="https://api.weixin.qq.com/cgi-bin/token?";$data=array(
'grant_type'=>'client_credential','appid'=>'微信appid','secret'=>'微信secret'
);$file=getcurl($url,$data);$josn=json_decode($file,true);$token=$josn['access_token'];$message=array(
'touser'=>'o-qtHt1lk2rNn6tDnSohtMocNmjs','msgtype'=>'text','text'=>array('content'=>'懒人程序')
);$message=json_encodes($message);$curl="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=$token";sendMessage($token,$message);