Cara menggunakan PHP untuk membangunkan fungsi langganan akaun awam

王林
Lepaskan: 2023-09-19 09:24:01
asal
1204 orang telah melayarinya

Cara menggunakan PHP untuk membangunkan fungsi langganan akaun awam

Cara menggunakan PHP untuk membangunkan fungsi langganan akaun awam

Dengan perkembangan pesat Internet mudah alih, akaun awam WeChat telah menjadi pilihan popular untuk banyak syarikat dan individu saluran penting untuk menyebarkan maklumat. Fungsi langganan adalah salah satu fungsi teras akaun rasmi Selepas pengguna mengikuti akaun rasmi, mereka boleh menerima berita terkini dan menolak kemas kini daripada akaun rasmi.

Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi langganan akaun awam dan menyediakan contoh kod khusus.

  1. Dapatkan pengguna dibuka

Sebelum membangunkan fungsi langganan akaun awam, anda perlu mendapatkan openid pengguna terlebih dahulu. Selepas pengguna mengikuti akaun rasmi, akaun rasmi akan menolak maklumat pengguna ke pelayan pembangun. Dalam PHP, openid pengguna boleh diperolehi dengan menghuraikan data XML yang diterima.

Berikut ialah contoh kod:

<?php
$xml = file_get_contents('php://input');

$data = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);

$openid = $data->FromUserName;
Salin selepas log masuk
  1. Menyimpan maklumat pengguna

Selepas mendapatkan pengguna, kami menerima perlu Simpan maklumat pengguna dalam pangkalan data supaya mesej seterusnya boleh ditolak berdasarkan openid.

Di sini kita boleh menggunakan pangkalan data MySQL untuk menyimpan maklumat pengguna. Pertama, anda perlu membuat jadual pengguna, termasuk medan openid, subscribe_time, dsb.

Kod sampel adalah seperti berikut:

<?php
$servername = "localhost";
$username = "yourusername";
$password = "yourpassword";
$dbname = "yourdbname";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "INSERT INTO users (openid, subscribe_time) VALUES ('$openid', NOW())";

if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();
Salin selepas log masuk
  1. Hantar mesej langganan

Apabila kita perlu menghantar langganan mesej kepada pengguna, Anda boleh menggunakan API yang disediakan oleh akaun rasmi WeChat untuk membuat panggilan. Dalam PHP, anda boleh menggunakan fungsi curl untuk menghantar permintaan HTTP.

Pertama, kita perlu mendapatkan kandungan mesej langganan dan merangkumnya ke dalam data dalam format XML. Kemudian, gunakan fungsi curl untuk menghantar permintaan POST untuk menghantar data XML ke pelayan WeChat.

Kod sampel adalah seperti berikut:

<?php
$access_token = "youraccess_token";
$openid = "useropenid";
$template_id = "yourtemplateid";
$content = "yourcontent";

$url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . $access_token;

$data = array(
    "touser" => $openid,
    "template_id" => $template_id,
    "data" => array(
        "content" => array(
            "value" => $content
        )
    )
);

$data_json = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($data_json))
);

$response = curl_exec($ch);

if(curl_errno($ch)){
    echo 'Curl error: ' . curl_error($ch);
}

curl_close($ch);

echo $response;
Salin selepas log masuk

Di atas ialah contoh kod khusus untuk menggunakan PHP untuk membangunkan fungsi langganan akaun awam. Dengan mendapatkan openid pengguna, menyimpan maklumat pengguna dan menghantar mesej langganan, kami boleh melaksanakan fungsi langganan akaun awam dan menolak berita terkini kepada pengguna. Pada masa yang sama, kita juga boleh menambah baik lagi pelaksanaan fungsi mengikut keperluan tertentu.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk membangunkan fungsi langganan akaun awam. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!