လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP ရှိ WeChat Apperet ၏ Real-teat chat function ကိုအကောင်အထည်ဖော်ရန်အပြည့်အစုံသင်ခန်းစာတစ်ခု

PHP ရှိ WeChat Apperet ၏ Real-teat chat function ကိုအကောင်အထည်ဖော်ရန်အပြည့်အစုံသင်ခန်းစာတစ်ခု

M66 2025-10-16

PHP ရှိ Wechat Apperet ၏အချိန်မှန် chat function ကိုအကောင်အထည်ဖော်ရန်သင်ခန်းစာ

WeChat Mini အစီအစဉ်များကိုကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုခြင်းဖြင့် developer များသည်သူတို့၏ကိုယ်ပိုင်ပရိုဂရမ်များ၌လက်ငင်းစာတိုပေးပို့ရေးလုပ်ငန်းများကိုအကောင်အထည်ဖော်ရန်မျှော်လင့်ကြသည်။ အရေးကြီးသောလူမှုရေးစွမ်းရည်တစ်ခုအနေဖြင့်အချိန်မှန်ချက်တင်သည်အသုံးပြုသူအပြန်အလှန်အတွေ့အကြုံကိုတိုးတက်စေရုံသာမက application များကိုစေးကပ်စေနိုင်သည်။ ဤဆောင်းပါးသည် WeChat applet ၏အချိန်မှန် chat function ကိုအကောင်အထည်ဖော်ရန် PHP နှင့် WebSound protocols များကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

အကောင်အထည်ဖော်မှုနိယာမများခြုံငုံသုံးသပ်ချက်

အချိန်နှင့်တပြေးညီစကားပြောရလျှင်အရေးအကြီးဆုံးအရာမှာ client နှင့် server ကိုအချိန်နှင့်တပြေးညီဆက်သွယ်ခြင်းကိုဆက်လက်ထိန်းသိမ်းရန်ဖြစ်သည်။ ရိုးရာ HTTP တောင်းဆိုမှုများသည်တစ်ကြိမ်တည်းဖြစ်သည်။ WebSocket protocol သည် TCP ဆက်သွယ်မှုတစ်ခုတည်းဖြင့် Full-duplex ဆက်သွယ်မှုကိုအထောက်အပံ့ပေးနေသည်။ ဆိုလိုသည်မှာ 0 န်ဆောင်မှုခံယူသူနှင့်ဆာဗာနှစ်ခုလုံးကိုတက်ကြွစွာပေးပို့နိုင်သည်။

PHP တွင် websocket server ကိုအလွယ်တကူအကောင်အထည်ဖော်ရန် Ratchet စာကြည့်တိုက်ကိုသုံးနိုင်သည်။ Ratchet မှတဆင့်ကျွန်ုပ်တို့သည်ဆက်သွယ်မှုများ, လုပ်ငန်းစဉ်မက်ဆေ့ခ်ျများ, ထုတ်လွှင့်သည့်အချက်အလက်များကိုစီမံခန့်ခွဲနိုင်သည်။

PHP လည်ပတ်ပတ်ဝန်းကျင်ကိုသတ်မှတ်ပါ

ပထမ ဦး စွာ PHP ကို ​​run နိုင်သောဆာဗာပတ် 0 န်းကျင်ကိုသင်ပြင်ဆင်ရန်လိုအပ်ပြီး Apache သို့မဟုတ် Nginx ကိုသုံးနိုင်သည်။ တေးရေးဆရာကို install လုပ်ပြီးနောက် Ratchet စာကြည့်တိုက်ကိုအောက်ပါ command ဖြင့်တပ်ဆင်ပါ။

 <span class="fun">Composer သည် CBoden / Ratchet လိုအပ်သည်</span>

WebSckound ဆာဗာကိုဖန်တီးပါ

Websocket Service ကိုစတင်ရန်စီမံကိန်းတွင် chat_server.php အမည်ရှိဖိုင်တစ်ခုကိုဖန်တီးပါ။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 require 'vendor/autoload.php';
use Ratchet\MessageComponentInterface;
use Ratchet\ConnectionInterface;

class ChatServer implements MessageComponentInterface {
   protected $clients;

   public function __construct() {
      $this->clients = new \SplObjectStorage;
   }

   public function onOpen(ConnectionInterface $conn) {
      $this->clients->attach($conn);
   }

   public function onMessage(ConnectionInterface $from, $msg) {
      $data = json_decode($msg, true);
      foreach ($this->clients as $client) {
         $client->send(json_encode($data));
      }
   }

   public function onClose(ConnectionInterface $conn) {
      $this->clients->detach($conn);
   }

   public function onError(ConnectionInterface $conn, \Exception $e) {
      $conn->close();
   }
}

$server = \Ratchet\Server\IoServer::factory(
   new \Ratchet\Http\HttpServer(
      new \Ratchet\WebSocket\WsServer(
         new ChatServer()
      )
   ),
   8080
);
$server->run();

ဤဖိုင်ကိုလည်ပတ်ပြီးနောက် WeChat Apperet မှဆက်သွယ်မှုများကိုစောင့်ဆိုင်းနေသည့် websoTy server သည် port 8080 ကိုနားထောင်ပြီး websocket server တစ်ခုနားထောင်လိမ့်မည်။

Mini ပရိုဂရမ်သည်ဝက်ဘ်ဆိုက်ကွန်ယက်ကိုအကောင်အထည်ဖော်သည်

WeChat Apperet တွင် word.connectionenconnectsocket method ကို သုံး. 0 က်ဘ်ဆိုက်ပိတ်ဆို့ခြင်းနှင့်ယုတ္တိဗေဒပေးပို့ခြင်းနှင့်လက်ခံခြင်းကိုအကောင်အထည်ဖော်နိုင်သည်။

 const socket = wx.connectSocket({
   url: 'ws://localhost:8080',
   success: function() {
      console.log('WebSocketဆက်သွယ်မှုအောင်မြင်သော');
   }
});

socket.onOpen(function() {
   console.log('WebSocketဆက်သွယ်မှုဖွင့်ထားသည်');
   socket.send({
      message: 'Hello, WebSocket!'
   });
});

socket.onMessage(function(res) {
   console.log('မက်ဆေ့ခ်ျကိုလက်ခံရရှိခဲ့သည်:', res.data);
});

socket.onClose(function() {
   console.log('WebSocketဆက်သွယ်မှုပိတ်လိုက်တယ်');
});

အထက်ပါကုဒ်များမှတစ်ဆင့် Appleet သည် PHP server နှင့်အသုံးပြုသူ Multi-user online chat ကိုကြည့်ရှုရန်အချိန်မှန်နှင့်အတူအပြန်အလှန်ဆက်သွယ်နိုင်သည်။

မက်ဆေ့ခ်ျကိုအပြောင်းအလဲနဲ့နှင့်စီးပွားရေးတိုးချဲ့ခြင်း

ဆာဗာ၏ onmessage နည်းလမ်းတွင်သုံးစွဲသူမှပေးပို့သည့်မက်ဆေ့ခ်ျကိုဒေတာဘေ့စ်သို့ချွေတာခြင်း,

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် PHP နှင့် websocket protocol ကို အသုံးပြု. WeChat applet ၏အချိန်မှန် chat function ကိုတည်ဆောက်ခြင်းလုပ်ငန်းစဉ်ကိုမိတ်ဆက်ပေးသည်။ ပတ် 0 န်းကျင်ဆောက်လုပ်ရေး, ဆာဗာဘေးထွက် ratchet အကောင်အထည်ဖော်မှုမှ Side-Side Ratchet အကောင်အထည်ဖော်မှုသည်ရှေ့တန်းဝက်ဘ်ဆိုက်ချိတ်ဆက်မှုပုံစံများ, ကျိုးကြောင်းဆီလျော်သောစီးပွားရေးတိုးချဲ့ခြင်းဖြင့်သီးသန့်ချက်တင်ခြင်း, မက်ဆေ့ခ်ျမှတ်တမ်းတင်ခြင်း, အွန်လိုင်းအခြေအနေများစသည်တို့စသည်တို့ကိုနားလည်သဘောပေါက်နိုင်သည်။

မကြာသေးမီ ဆောင်းပါးများ