ထုတ်လွှင့်သည့်မက်ဆေ့ခ်ျတစ်ခုသည်သီးခြားကိရိယာတစ်ခုနှင့်မတူဘဲတူညီသောကွန်ယက်ရှိကိရိယာများအားလုံးကိုပေးပို့သည့်စာတစ်စောင်ဖြစ်သည်။ ၎င်းသည်ပုံမှန်အားဖြင့်ဒေသတွင်းကွန်ယက် (LAN) ရှိကိရိယာများအားလုံးသည် 0 န်ဆောင်မှုရှာဖွေတွေ့ရှိခြင်း,
PHP တွင်အသံလွှင့်မက်ဆေ့ခ်ျများပို့ရန် Socket_sendto function ကိုသုံးနိုင်သည်။ ထုတ်လွှင့်ခြင်းသတင်းကိုထုတ်လွှင့်သည့်သတင်းစကားသည်များသောအားဖြင့်ကွန်ရက်၏ထုတ်လွှင့်မှုလိပ်စာ ( 255.255.2555.255.255 ) ကို အသုံးပြု. UDP protocol ကို အသုံးပြု. ပို့ရန်လိုအပ်သည်။
broadcast message ကိုပို့ရန်ကျွန်ုပ်တို့ UDP Socket ကိုဖွင့်ရန် Socket_sendto function ကိုထုတ်လွှင့်ရန် Socket_sendto function ကိုသုံးပါ။ Budge Functions များကိုအကောင်အထည်ဖော်ရန်အခြေခံအဆင့်များသည်အောက်ပါအတိုင်းဖြစ်သည်။
Socket Create : Socket_create ကိုအသုံးပြုပြီး UDP Socket ကိုဖန်တီးပါ။
Broadcast Permissions များကို Setocking_set_option ဖြင့်ထုတ်လွှင့်ခြင်း။
အသံလွှင့်မက်ဆေ့ခ်ျများပေးပို့ပါ ။ Socket_sendto ကို မက်ဆေ့ခ်ျများပို့ရန်အသုံးပြုပါ။
Close Socket : မက်ဆေ့ခ်ျကိုပို့ပြီးနောက် socket ကိုပိတ်ပါ။
ဤနေရာတွင် socket_sendto function ကိုအသုံးပြုပြီး broadcast message များပေးပို့ခြင်း၏ဥပမာအပြည့်အစုံဖြစ်သည်။
<?php
// aUDPSockets
$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
if (!$socket) {
echo "无法创建Sockets: " . socket_strerror(socket_last_error()) . "\n";
exit;
}
// 设置Sockets选项以允许广播
$opt = 1;
socket_set_option($socket, SOL_SOCKET, SO_BROADCAST, $opt);
// အသံလွှင့်ခြင်းမက်ဆေ့ခ်ျကိုအကြောင်းအရာ
$message = "ဒါကထုတ်လွှင့်တဲ့သတင်းစကားပါ!";
// ထုတ်လွှင့်လိပ်စာနှင့်ဆိပ်ကမ်း
$broadcastAddress = '255.255.255.255';
$port = 12345;
// ထုတ်လွှင့်စာများပို့ပါ
$bytesSent = socket_sendto($socket, $message, strlen($message), 0, $broadcastAddress, $port);
if ($bytesSent === false) {
echo "ပေးပို့ခြင်းမအောင်မြင်ပါ: " . socket_strerror(socket_last_error()) . "\n";
} else {
echo "အဆိုပါထုတ်လွှင့်မက်ဆေ့ခ်ျကိုအောင်မြင်စွာပေးပို့ခဲ့တာဖြစ်ပါတယ်!\n";
}
// 关闭Sockets
socket_close($socket);
?>
Socket : Socket_create (AF_ATEATE) UDP Socket ကိုဖန်တီးရန်အသုံးပြုသည်။
Broadcast Permissions များကိုသတ်မှတ်ပါ ။ Socket_set_option ($ socket, sol_broadcast, so_broadcast, so_broadcast, so_boadcast, so_broadcast, so_boadcast) ကို enable လုပ်ပါ။
ထုတ်လွှင့်သည့်လိပ်စာ - 255.255.2555.255 သည်ပုံမှန်အားဖြင့်အသုံးပြုသောအသံလွှင့်ဌာနတစ်ခုဖြစ်ပြီး၎င်းသည်ဒေသတွင်းကွန်ယက်ရှိကိရိယာများအားလုံးကိုကိုယ်စားပြုသော broadcroad လိပ်စာဖြစ်သည်။
မက်ဆေ့ခ်ျများပို့ပါ ။ Socket_sendto ($ socket, $ message, strlen ($ message), 0, $ broadcordaddrder, $ port), 0, $ broadcord and port မှတဆင့်မက်ဆေ့ခ်ျများပို့ပေးသည်။
Network Configuration : သင်၏ကွန်ရက်သည်အသံလွှင့်ခွင့်ပြုရန်သေချာစေပါ။ သင်၏ Firewall (သို့) router ကိုသင့်တွင်အကန့်အသတ်မရှိလျှင်ထုတ်လွှင့်ခြင်းမက်ဆေ့ခ်ျများပေးပို့ခြင်းကိုတားဆီးနိုင်သည်။
ထုတ်လွှင့်မှုလိပ်စာ - ကွန်ယက်ဖွဲ့စည်းမှုအချို့တွင် 255.255.2555555555.255.255.255.255.255.255.255.255.255.255.255.2555.2555.255.2555.2555555.255.255.2555.255555.255.255.255 . ၎င်းကိုကွန်ယက်၏ထုတ်လွှင့်မှုလိပ်စာကိုတွက်ချက်ခြင်းဖြင့်ဆုံးဖြတ်နိုင်သည်။
အမှားကိုင်တွယ်ခြင်း - ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်အသုံးပြုသောအခါ Socket Creation ပျက်ကွက်ခြင်း,
ထုတ်လွှင့်သောမက်ဆေ့ခ်ျများ၏ application အခြေအနေများသည်အလွန်ကျယ်ပြန့်စွာရှိပြီးအောက်ပါတို့မှာများသောအားဖြင့်အသုံးများသောအခြေအနေများဖြစ်သည်။
LAN 0 န်ဆောင်မှုရှာဖွေတွေ့ရှိမှု - ကိရိယာတွင်၎င်းတို့၏တည်ရှိမှုမက်ဆေ့ခ်ျများမှတဆင့်မိမိတို့၏တည်ရှိမှုကွန်ယက်ရှိအခြားကိရိယာများကိုဖော်ပြထားသည်။
System Notification - System updates များ, သတိပေးမက်ဆေ့ခ်ျများစသဖြင့်တူညီသောကွန်ယက်ရှိကိရိယာများအားလုံးကိုအသိပေးချက်များကိုပေးပို့ပါ။
Real-time update : ဂိမ်းများတွင်အချိန်နှင့်တပြေးညီအဆင့်အတန်းမွမ်းမံမှုများကဲ့သို့သောစက်ကိရိယာများအားလုံးကိုထုတ်လွှင့်သောအချက်အလက်များကိုထုတ်လွှင့်သောအချက်အလက်များကိုထုတ်လွှင့်သည်။