PHP တွင် GetHostbyName သည်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည်ကွန်ယက်ပရိုဂရမ်, DNS Query စသည့်ဖြစ်ရပ်များတွင်အထူးသဖြင့်ဒိုမိန်းအမည် resolution ကိုဖျော်ဖြေသောအခါ,
GethostbyName ၏အခြေခံအသုံးပြုမှုမှာ domain name ကို function တစ်ခုထဲသို့ကူးပြောင်းပြီးဒိုမိန်းအမည်၏အိုင်ပီလိပ်စာကိုပြန်ပို့ရန်ဖြစ်သည်။ အကယ်. ဒိုမိန်းအမည်ကို ဖြေရှင်း. မရပါသို့မဟုတ်ပြ a နာတစ်ခုရှိလျှင် function ကိုမူရင်းဒိုမိန်းအမည် string ကိုပြန်ပို့သည်။
သဒ္ဒါ:
<span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-title function_ invoke__">gethostbyname</span></span><span> ( </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$hostname</span></span><span> )
</span></span>$ hostname : host name ကိုခွဲခြမ်းစိတ်ဖြာခံရမည့်အများအားဖြင့် www.example.com စသည့်ဒိုမိန်းအမည်ဖြစ်သည်။
Value ကိုပြန်သွားပါ
ဤလုပ်ဆောင်ချက်သည်သက်ဆိုင်ရာ hostname ၏အိုင်ပီလိပ်စာကိုကိုယ်စားပြုသည့် string ကိုပြန်လည်ရောက်ရှိစေသည်။ ခွဲခြမ်းစိတ်ဖြာမှုမအောင်မြင်ပါကဝင်လာသောအိမ်ရှင်အမည်ကိုပြန်ပို့သည်။
ရိုးရှင်းသောဥပမာအနည်းငယ်မှတစ်ဆင့် GethostbyName ၏လက်တွေ့ကျသောအသုံးချမှုကိုနားလည်ကြပါစို့။
ဥပမာ 1 - အခြေခံအသုံးပြုမှု
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$hostname</span></span><span> = </span><span><span class="hljs-string">"www.example.com"</span></span><span>;
</span><span><span class="hljs-variable">$ip</span></span><span> = </span><span><span class="hljs-title function_ invoke__">gethostbyname</span></span><span>(</span><span><span class="hljs-variable">$hostname</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"The IP address of <span class="hljs-subst">$hostname</span></span></span><span> is: </span><span><span class="hljs-subst">$ip</span></span><span>";
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ထုတ်လုပ်မှု -
<span><span><span class="hljs-attribute">The</span></span><span> IP address of www.example.com is: </span><span><span class="hljs-number">93.184.216.34</span></span><span>
</span></span>ဤဥပမာတွင် www.exampax.com တွင်ကျွန်ုပ်တို့ဖြတ်သန်းသွားသည်။ GetHostbyname သည် IP လိပ်စာကိုဒိုမိန်းအမည်နှင့်သက်ဆိုင်သော IP လိပ်စာကို 93.184.216.34 နှင့်သက်ဆိုင်သည်။
ဥပမာ 2 - ပျက်ကွက်ခြင်း၏အခြေအနေ
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$hostname</span></span><span> = </span><span><span class="hljs-string">"nonexistentdomain.xyz"</span></span><span>;
</span><span><span class="hljs-variable">$ip</span></span><span> = </span><span><span class="hljs-title function_ invoke__">gethostbyname</span></span><span>(</span><span><span class="hljs-variable">$hostname</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"The IP address of <span class="hljs-subst">$hostname</span></span></span><span> is: </span><span><span class="hljs-subst">$ip</span></span><span>";
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ထုတ်လုပ်မှု -
<span><span>The IP address of nonexistentdomain.xyz </span><span><span class="hljs-keyword">is</span></span><span>: nonexistentdomain.xyz
</span></span>ဒိုမိန်းအမည်ကိုမဖြေရှင်းနိုင်ပါက GetosostbyName သည် အဝင် hostname ကိုတိုက်ရိုက်ပြန်ပေးလိမ့်မည်။ ဤကိစ္စတွင် NonexistentDomomain.xyz ကို ဖြေရှင်း. မရပါ, ထို့ကြောင့် output သည်မူလဒိုမိန်းအမည်ဖြစ်သည်။
IPv4 လိပ်စာ - GetHostbyName သည် IPv4 လိပ်စာကိုသာပြန်ပေးလိမ့်မည်။ IPv6 လိပ်စာတစ်ခုရရန်လိုအပ်ပါက GetAddrinfo ကဲ့သို့သောအခြားနည်းလမ်းများကိုသင်အသုံးပြုရန်လိုအပ်သည်။
CacheTing ယန္တရား - GetHostbyName သည် System ၏ DNS cache ပေါ်တွင်မူတည်သည်။ ထို့ကြောင့်တောင်းဆိုမှုများစွာသည်တူညီသောဒိုမိန်းအမည်ကိုဖြေရှင်းရန်အခါတိုင်းသိုလှောင်ထားသောရလဒ်များကိုတိုက်ရိုက်မေးမြန်းမည့်အစားပြန်လာနိုင်သည်။
စွမ်းဆောင်ရည်ထည့်သွင်းစဉ်းစားချက်များ - အကယ်. အချိန်တိုအတွင်းတွင်ဒိုမိန်းအမည်များကိုမကြာခဏဖြေရှင်းရန်လိုအပ်လျှင် DNS မေးမြန်းချက်အရေအတွက်ကိုလျှော့ချရန်နှင့်စွမ်းဆောင်ရည်ကိုလျှော့ချရန် Cache ယန္တရားကိုအသုံးပြုရန်လိုအပ်လားစဉ်းစားပါ။
အမှားကိုင်တွယ်ခြင်း - အချို့သောကိစ္စရပ်များတွင် GetHostbyname သည် အမှားအယွင်းများကိုပြန်ပို့နိုင်သော်လည်း (ဥပမာမူလ hostname ကိုပြန်ပို့ပါ) အမှားအယွင်းများကိုပြန်ပို့ပါ။ အကယ်. အသေးစိတ်အမှားကိုင်တွယ်ရန်လိုအပ်ပါက GetHostyaddr သို့မဟုတ် checkdnsrr ကဲ့သို့သောအခြားလုပ်ဆောင်မှုများကိုသင်ပေါင်းစပ်နိုင်သည်။
DNS Query Tool : ရိုးရိုး DNS Query Tool ကိုရေးရန် GetHostyname ကို သင်အသုံးပြုနိုင်သည်။
Network Debugging : ကွန်ယက်ချိတ်ဆက်မှုတစ်ခုကို debging လုပ်ခြင်းသို့မဟုတ်ဒိုမိန်းအမည်ကိုဖြေရှင်းသောအခါ GetHostbyName သည် domain name ကိုပုံမှန်ဖြေရှင်းနိုင်ခြင်းရှိမရှိဆုံးဖြတ်ရန်ကူညီနိုင်သည်။
အလိုအလျောက်ဖြန့်ကျက်ခြင်း - အချို့သောအလိုအလျောက် scripts များတွင် GetHostbyName သည် Target Server သည်အွန်လိုင်းဖြစ်ကြောင်းအတည်ပြုရန်ကူညီနိုင်သည်။
Domain Name resolution အတွက်ပိုမိုမြင့်မားသောလိုအပ်ချက်များရှိပါက၎င်းကိုအောက်ပါ PHP လုပ်ဆောင်ချက်များကို တွဲဖက်. အသုံးပြုနိုင်သည်။
GetHostbyaddr () : IP address ကိုအခြေခံသည့် host name ကိုပြောင်းပါ။
CheckDNSRR () ဒိုမိန်းအမည်၏ DNS မှတ်တမ်းကိုစစ်ဆေးသည်ကိုစစ်ဆေးပါ။
DNS_GET_RECORD () - ပိုမိုသိရှိလိုပါကဒိုမိန်းအမည်အားလုံးကိုဒိုမိန်းအမည်မှတ်တမ်းများကိုရယူပါ။
GetHostbyName သည် ip address ကို hostname မှတစ်ဆင့် IP address ကိုရယူရန်ရိုးရိုးရှင်းရှင်းသော်လည်းအလွန်ထိရောက်သောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည်ရိုးရှင်းသော domain name resolution resolutions များအတွက်ပြီးပြည့်စုံသောကြောင့်အသုံးပြုရန်လွယ်ကူသည်။ ၎င်း၏အခြေခံအသုံးပြုမှုနှင့်ကန့်သတ်ချက်များကိုနားလည်ခြင်းအားဖြင့် developer များသည်ကွန်ယက်နှင့်သက်ဆိုင်သောပရိုဂရမ်ပြ problems နာများကိုပိုမိုထိရောက်စွာဖြေရှင်းနိုင်သည်။