PHP တွင် stream_socket_client () function ကိုကွန်ယက်ချိတ်ဆက်မှုသို့မဟုတ် Unix ဒိုမိန်း societ connection ကိုဖွင့်ရန်အသုံးပြုသည်။ ၎င်းသည်အချိန်ကုန်ချိန်ညှိချက်များ, encryption, proxy စသည်တို့ကဲ့သို့သောရွေးချယ်စရာများစွာကိုထောက်ပံ့သည်။ ဤရွေးချယ်မှုများကို stream_context_create () မှဖန်တီးပြီး stream_socket_client () သို့အခြေအနေအဖြစ်သတ်မှတ်ထားသည်။
socket configuration ကိုရယူရန်နှင့်ကြည့်ရှုရန် Compine Tream_context_et_loptions ( ) ကိုကြည့်ရှုရန် Complain_context_et_loptions () ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည် stream_socket_cletient_clies အတွက်အခြေအနေကိုဖန်တီးရန်လိုအပ်သည်။ အခြေအနေတစ်ခုသည်ကွန်ယက်ဆက်သွယ်မှုများ၏အပြုအမူကိုထိန်းချုပ်သော configuration options များပါ 0 င်သည့်ဖွဲ့စည်းပုံမှာဖွဲ့စည်းပုံမှာဖွဲ့စည်းပုံမှာဖွဲ့စည်းတည်ဆောက်ပုံဖြစ်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်ဆက်သွယ်မှုအတွက်အချိန်ကုန်အချိန်ကိုသတ်မှတ်နိုင်ပြီး SSL encryption ကိုဖွင့်နိုင်သည်။
// တစ် ဦး stream အခြေအနေကိုဖန်တီးပါ
$options = [
'http' => [
'method' => 'GET',
'header' => "User-Agent: PHP\r\n",
],
'ssl' => [
'verify_peer' => false, // ရွယ်တူကလက်မှတ်ကိုအတည်မပြုရ
'verify_peer_name' => false, // ရွယ်တူကလက်မှတ်ကိုအတည်မပြုရ名称
]
];
$context = stream_context_create($options);
အထက်ပါကုဒ်များတွင် HTTP configuration နှင့် SSL configuration တစ်ခုကိုဖန်တီးသည်။ ၎င်းသည်သက်တူရွယ်တူလက်မှတ်ကိုအတည်မပြုရသေးပါ။
နောက်တစ်ခုက TCP ဆက်သွယ်မှုကိုဖွင့်ရန် stream_socket_client () ကို သုံးပါ။ ချိတ်ဆက်သောအခါကျွန်ုပ်တို့သည်အခြေအနေကို parameter တစ်ခုအဖြစ်ဖြတ်သန်းသွားသည်။
// အခြေအနေနှင့်အတူဖွင့်လှစ် TCP ဆက်
$fp = stream_socket_client("tcp://m66.net:80", $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $context);
if (!$fp) {
echo "ဆက်失败: $errno - $errstr\n";
exit;
}
ဤကုဒ်တွင် M66.net ၏ port 80 နှင့်ချိတ်ဆက်သည်။ ဆက်သွယ်မှုအောင်မြင်ပြီးနောက်ဒေတာများကို ဒေါ်လာ FP မှတဆင့်ဖတ်ရန်နှင့်ရေးနိုင်သည်။
ဆက်သွယ်မှုတစ်ခုတည်ဆောက်ပြီးသည်နှင့်ကျွန်ုပ်တို့သည် Applied configuration options များကိုကြည့်ရှုရန် streamext_get_et_et_get_options () function ကိုသုံးနိုင်သည်။ ဤလုပ်ဆောင်ချက်သည် configuration options များအားလုံးပါ 0 င်သောခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။
// လက်ရှိစီးဆင်းမှုအတွက် configuration options များကိုရယူပါ
$options = stream_context_get_options($context);
echo '<pre>';
print_r($options);
echo '</pre>';
အထက်ပါကုဒ်သည်လက်ရှိစီးဆင်းမှုအတွက် configuration options များကိုပုံနှိပ်ပါလိမ့်မည်။ ဥပမာအားဖြင့်, သင်သည် http နှင့် SSL configurations များကိုတည်ဆောက်ပါကရလဒ်သည်ကြည့်ရှုလိမ့်မည်။
Array
(
[http] => Array
(
[method] => GET
[header] => User-Agent: PHP
)
[ssl] => Array
(
[verify_peer] =>
[verify_peer_name] =>
)
)
stream_socket_cletient () နှင့် stream_context_get_options () ကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အလွယ်တကူကြည့်ရှုနိုင်သည်။ connection timeout, encryption options များသို့မဟုတ်အခြား Custom Configuration ပစ္စည်းများ, stream_context_et_options () သည် အသုံးပြုသော configurations များကိုကြည့်ရှုရန်ဖြစ်စေ,
ဤဆောင်းပါးသည် PHP တွင် streaming အခြေအနေကိုမည်သို့အသုံးပြုရမည်ကိုပိုမိုနားလည်ရန်နှင့်ဆက်စပ်သော configuration ကိုရယူရန်ပိုမိုနားလည်ရန်ဤဆောင်းပါးကသင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်မျှော်လင့်ပါ။