最新消息: 新版网站上线了!!!

php微信推送消息简单例子

<?php
header("Content-type:text/html;charset=utf-8");
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 < count ( $keys ); $i ++) { //See if each key correspondes to its position
                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'=>'wx9c285de0087c78e3',
    'secret'=>'*******************'
);
$file = getcurl($url,$data);
$josn = json_decode($file,true);
$token = $josn['access_token'];
 
$curl = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=$token";
 
$array = array('o-qtHt1lk2rNn6tDnSohtMocNmJk');
foreach($array as $v) {
    $message = array(
        'touser'=>$v,
        'msgtype'=>'text',
        'text'=>array('content'=>'推送消息测试')
    );
    $message = json_encodes($message);
    sendMessage($token,$message);
}

转载请注明:谷谷点程序 » php微信推送消息简单例子