Rumah > pembangunan bahagian belakang > tutorial php > Pelaksanaan PHP teknik carta alir operasi applet WeChat

Pelaksanaan PHP teknik carta alir operasi applet WeChat

PHPz
Lepaskan: 2023-05-31 19:54:01
asal
1697 orang telah melayarinya

Dengan perkembangan pesat Internet mudah alih, program mini WeChat menjadi semakin popular di kalangan pengguna, dan PHP, sebagai bahasa pengaturcaraan yang berkuasa, juga memainkan peranan penting dalam proses pembangunan program mini. Artikel ini akan memperkenalkan teknik melaksanakan carta alir operasi applet WeChat dalam PHP.

  1. Dapatkan access_token

Dalam proses menggunakan pembangunan applet WeChat, anda perlu mendapatkan access_token, yang merupakan bukti kelayakan penting untuk melaksanakan operasi applet WeChat. Kod untuk mendapatkan access_token dalam PHP adalah seperti berikut:

function getAccessToken($appid,$appsecret){
        $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($ch);
        $arr = json_decode($output, true);
        curl_close($ch);
        if(isset($arr['access_token'])){
            return $arr['access_token'];
        }else{
            return false;
        }
    }
Salin selepas log masuk

di mana $appid dan $appsecret ditetapkan semasa membuat program mini pada platform awam WeChat.

  1. Hantar mesej templat

Seterusnya, anda boleh menggunakan PHP untuk menghantar mesej templat, kodnya adalah seperti berikut:

function sendTemplateMsg($access_token,$openid,$tem_id,$data,$url='',$miniprogram=''){
        $template = array(
            'touser' => $openid,
            'template_id' => $tem_id,
            'data' => $data
        );
        if(!empty($url)){
            $template['url'] = $url;
        }
        if(!empty($miniprogram)){
            $template['miniprogram'] = $miniprogram;
        }
        $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$access_token;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($template));
        $output = curl_exec($ch);
        curl_close($ch);
        return json_decode($output, true);
    }
Salin selepas log masuk

di mana $access_token adalah kelayakan yang diperolehi dalam langkah sebelumnya , $openid ialah openid pengguna yang ingin menghantar mesej templat, $tem_id ialah ID mesej templat yang digunakan dan $data ialah tatasusunan yang mengandungi kandungan mesej.

  1. Dapatkan maklumat pengguna

PHP juga boleh mendapatkan maklumat berkaitan pengguna, seperti nama panggilan pengguna, avatar, dsb. Kodnya adalah seperti berikut:

function getUserInfo($access_token,$openid){
        $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($ch);
        $arr = json_decode($output, true);
        curl_close($ch);
        return $arr;
    }
Salin selepas log masuk

di mana $access_token ialah sijil yang diperolehi dalam langkah sebelumnya, dan $openid ialah openid pengguna untuk mendapatkan maklumat pengguna.

  1. Memanggil pembayaran WeChat

Dalam proses pembangunan applet WeChat, langkah-langkah yang berkaitan dengan pembayaran pengguna boleh dilaksanakan menggunakan PHP. Kodnya adalah seperti berikut:

function wxpay($params,$key){
        $url = 'https://api.mch.weixin.qq.com/pay/unifiedorder';
        $params['appid'] = YOUR_APPID;
        $params['mch_id'] = YOUR_MCHID;
        $params['nonce_str'] = md5(uniqid(rand(),true));
        $params['sign_type'] = 'MD5';
        $params['spbill_create_ip'] = $_SERVER['REMOTE_ADDR'];
        $params['notify_url'] = YOUR_NOTIFY_URL;
        $params['trade_type'] = 'JSAPI';
        $params['openid'] = YOUR_OPENID;
        ksort($params);
        $str = "";
        foreach($params as $k=>$v){
            if($v != "" && !is_array($v)){
                $str .= $k . "=" . $v . "&";
            }
        }
        $str .= "key=" . $key;
        $params['sign'] = strtoupper(md5($str));
        $xml = arrayToXml($params);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        $output = curl_exec($ch);
        curl_close($ch);
        $arr = xmlToArray($output);
        return $arr;
    }
Salin selepas log masuk

di mana $params ialah tatasusunan yang mengandungi maklumat berkaitan pembayaran dan $key ialah kunci API yang ditetapkan pada platform pedagang WeChat.

Ringkasan:

Di atas adalah keseluruhan kandungan proses operasi program mini WeChat dalam PHP Melalui teknik ini, pembangunan program mini dapat dijalankan dengan lebih lancar. Sudah tentu, dalam operasi sebenar, anda juga perlu mempertimbangkan faktor seperti keselamatan, kecekapan dan kebolehselenggaraan program, serta mempertimbangkan dan menggunakan penyelesaian yang paling sesuai untuk anda secara menyeluruh, supaya anda boleh menyelesaikan tugas pembangunan program kecil dengan lebih cekap.

Atas ialah kandungan terperinci Pelaksanaan PHP teknik carta alir operasi applet WeChat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan