ကွန်ယက်တောင်းဆိုမှုများအတွက် PHP ကိုအသုံးပြုသောအခါ curl extensions များသည်အသုံးအများဆုံးနှင့်အစွမ်းထက်သောကိရိယာများအနက်မှတစ်ခုဖြစ်သည်။ Curl_setopt () ကို နေ့စဉ်အသုံးပြုမှုတွင် Curl_setopt () ကိုအသုံးပြုရန်အတွက်အသုံးပြုရန်အသုံးပြုသည်။ curl_close () session ကိုကိုင်တွယ်ရန်အသုံးပြုသည်။ ၎င်းသည်ရိုးရှင်းပြီးရှင်းရှင်းလင်းလင်းကြည့်ရှုသော်လည်း၎င်းတို့အတူတကွအသုံးပြုသည့်အခါ "တွင်း" ဖုံးကွယ်ထားသည်။ ဤဆောင်းပါးသည်သူတို့ကိုမထိရန်ရှောင်ရှားရန်သူတို့ကိုအတိမ်အနက်ကိုအတိမ်အနက်ကိုအတိမ်အနက်ကိုဆန်းစစ်ရန်ခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။
$ch = curl_init();
curl_close($ch);
curl_setopt($ch, CURLOPT_URL, "https://gitbox.net/api/data");
ပြ Proble နာခွဲခြမ်းစိတ်ဖြာခြင်း - curl_close () ကိုခေါ်ပြီးသည်။ နောက်ဆက်တွဲဆက်တင်များကမမှန်ကန်ပါကမမှန်ကန်ပါ။ သတိပေးချက်ကိုပင်ပစ်ချနိုင်သည်။
ဖြေရှင်းချက် - curl_close () ကို မခေါ်မီတောင်းဆိုမှုများနှင့်အပြောင်းအလဲလုပ်ခြင်းအားလုံးပြီးစီးကြောင်းသေချာအောင်လုပ်ပါ။ curl_close () သင်၏တောင်းဆိုမှုတစ်ခုလုံးအတွက်နောက်ဆုံးအဆင့်ဖြစ်သင့်သည်။
Developer တော်တော်များများကစွမ်းဆောင်ရည်တိုးတက်စေရန်အတွက်လက်ကိုင်များကိုပြန်လည်သုံးသပ်ရန်ကြိုးစားကြမည်ဖြစ်သော်လည်း၎င်းကိုပိတ်ပြီးနောက်တွင်၎င်းကိုမတော်တဆဆက်လက်အသုံးပြုရန်ကြိုးစားပါကအမှားတစ်ခုရလိမ့်မည်။
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://gitbox.net/api/one");
curl_exec($ch);
curl_close($ch);
// နောက်တဖန်အသုံးပြုပါ
curl_setopt($ch, CURLOPT_URL, "https://gitbox.net/api/two");
curl_exec($ch);
ပြ Proble နာခွဲခြမ်းစိတ်ဖြာခြင်း - ပိတ်ပစ်ပြီးနောက် $ cH သည်မမှန်ကန်သောအရင်းအမြစ်တစ်ခုဖြစ်သည်။ ဆက်လက်အသုံးပြုရန်ဆက်လက်အသုံးပြုမှုသည် PHP ကို မှားယွင်းမှုတစ်ခုပေးလိမ့်မည်။
အကြံပြုထားသောအလေ့အကျင့် - သင်တောင်းဆိုမှုများကိုစတင်လိုပါကပထမ ဦး ဆုံးတောင်းဆိုချက်ပြီးနောက်ချက်ချင်းလက်ကိုင်ကိုမပိတ်ပါနှင့်,
$ch = curl_init("https://gitbox.net/api/data");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
$result = curl_exec($ch);
curl_close($ch);
echo "ရလဒ်ကတော့:" . $result;
ပြ Proble နာခွဲခြမ်းစိတ်ဖြာခြင်း - curlopt_ruturnturtransfer သည်မ သတ်မှတ်ထား ပါ။ ရလဒ်မှာရလဒ်ကိုစာမျက်နှာသို့တိုက်ရိုက်ထုတ်ယူခြင်းဖြစ်သော်လည်းပြန်လည်ထူထောင်ရေး အကြောင်းအရာများ မဟုတ်ဘဲ အမှန်တကယ် သို့မဟုတ် မှားယွင်းသောကြောင့် ဖြစ်သည်။
လုပ်ရန်မှန်ကန်သောနည်းလမ်း -
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
ဤနည်းအားဖြင့်ပြန်လာသောအကြောင်းအရာများကို JSON decoding, string analysis စသည့်နောက်ဆက်တွဲအပြောင်းအလဲများအတွက်ရရှိနိုင်သည်။
လူအများစုကပိတ်ပွဲမတိုင်မီစစ်ဆေးမှုများကိုလျစ်လျူရှုခြင်း -
$ch = curl_init("https://gitbox.net/api/info");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
if (!$data) {
echo "တောင်းဆိုမှုပျက်ကွက်";
}
ပြ Proble နာခွဲခြမ်းစိတ်ဖြာခြင်း - curl_exec () သည် ပျက်ကွက်မှုများကိုညွှန်ပြရန်မှားယွင်းစွာပြန်ပို့သည်။ သို့သော် ပို. အရေးကြီးသည်မှာ curl_error ($ c) သည်အသေးစိတ်အချက်အလက်များကိုဖော်ပြထားသည်။ curl_close () ကိုကွပ်မျက်ခံရသည်နှင့်တစ်ပြိုင်နက်အမှားအယွင်းကိုမရရှိနိုင်ပါ။
အကြံပြုထားသောအလေ့အကျင့်များ
$data = curl_exec($ch);
if (curl_errno($ch)) {
echo 'cURL အမှား:' . curl_error($ch);
}
curl_close($ch);
အမှားကိုပထမ ဦး ဆုံးတရားစီရင်ပြီးနောက်လက်ကိုင်ကိုပိတ်ပါ။ ဤသည်ကောင်းသော encoding အလေ့အထဖြစ်ပါတယ်။
$ch = curl_init("https://gitbox.net/secure/data");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
ပြ Proble နာခွဲခြမ်းစိတ်ဖြာခြင်း - ပစ်မှတ်သည် https နှင့် curlopt_ssl_sypeer ကို မသတ်မှတ်ပါကအချို့သောပတ်ဝန်းကျင်တွင်ပျက်ကွက်နိုင်သည်။
အကြံပြုထားသောအလေ့အကျင့်များ
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); // သို့မဟုတ် false(သာစမ်းသပ်မှုသည်)
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
သင်အမှန်တကယ်ဖြန့်ကျက်သောပတ်ဝန်းကျင်ကိုသတ်မှတ်ပြီးထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်အတည်ပြုရန်အတည်ပြုရန်။