လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> socket configuration ကိုရယူရန် stream_socket_cletient_cliet_clet_get_options () ကိုပေါင်းစပ်ပါ

socket configuration ကိုရယူရန် stream_socket_cletient_cliet_clet_get_options () ကိုပေါင်းစပ်ပါ

M66 2025-05-28

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 () ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။

အဆင့် 1: Socket အခြေအနေကိုဖန်တီးပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည် 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 တစ်ခုကိုဖန်တီးသည်။ ၎င်းသည်သက်တူရွယ်တူလက်မှတ်ကိုအတည်မပြုရသေးပါ။

အဆင့် 2: connection ကို stream_socket_client ကိုဖွင့်ပါ။

နောက်တစ်ခုက 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 မှတဆင့်ဖတ်ရန်နှင့်ရေးနိုင်သည်။

အဆင့် 3: configuration ကိုကြည့်ရှုရန် stream_context_get_et_et_ettions () ကိုသုံးပါ

ဆက်သွယ်မှုတစ်ခုတည်ဆောက်ပြီးသည်နှင့်ကျွန်ုပ်တို့သည် 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 ကိုရယူရန်ပိုမိုနားလည်ရန်ဤဆောင်းပါးကသင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်မျှော်လင့်ပါ။