ခေတ်သစ်ဝက်ဘ်ဆိုက်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဖိုင်များစွာကိုတစ်ချိန်တည်းတွင်ဒေါင်းလုပ်လုပ်ရန်လိုအပ်သည်။ ဖိုင်အမြောက်အများကိုပြုပြင်သည့်အခါရိုးရာ download လုပ်ခြင်းနည်းလမ်းများသည်မတတ်နိုင်သောနည်းစနစ်များမစွမ်းနိုင်ပါ။ စွမ်းဆောင်ရည်တိုးတက်စေရန်ဤဆောင်းပါးသည် PHP မှတစ်ဆင့် PHP မှတစ်ဆင့် PHP မှတဆင့် PHP မှတဆင့် PHP မှတဆင့် HTTP တောင်းဆိုမှုများကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
PHP တွင် asynchronous http တောင်းဆိုမှုများကိုအကောင်အထည်ဖော်ရန်နည်းလမ်းများစွာရှိသည်။ Curl စာကြည့်တိုက်, SWOOLE တိုးချဲ့မှု, guidehtp library သုံးခြင်းများကို အသုံးပြု. အသုံးအများဆုံးနည်းလမ်းများနှင့်လုပ်ငန်းစဉ်များစွာကိုပေးပို့သည့်အခါ HTTP တောင်းဆိုမှုများနှင့်လုပ်ငန်းစဉ်ရလဒ်များကိုပေးပို့ခြင်းမှရှောင်ရှားရန်အသုံးဝင်သောနည်းလမ်းများအသုံးပြုသည်။
ဖိုင်ပေါင်းများစွာကိုလုပ်ဆောင်ခြင်းဖြင့် PHP သည်တစ်ပြိုင်နက်တည်းဖိုင်များကိုတစ်ပြိုင်တည်း download လုပ်ရန် espynchronous http တောင်းဆိုမှုများကိုသုံးနိုင်သည်။ ဖိုင်တစ်ခုစီအတွက် download download ရယူခြင်းကိုလွတ်လပ်သောချည်တစ်ခုသို့တင်သွင်းနိုင်သည်။
ဖိုင်ပေါင်းစုံကူးယူသည့်အခါဖိုင်တစ်ခုစီ၏ download တိုးတက်မှုများကိုကျွန်ုပ်တို့စောင့်ကြည့်နိုင်သည်။ download progress ကိုရယူရန် callback function ကိုသတ်မှတ်ခြင်းအားဖြင့်သင်သည်တိုးတက်မှုဘားကို dvonature update သို့မဟုတ်ရာခိုင်နှုန်းကိုပြသနိုင်သည်။ ၎င်းသည်စွမ်းဆောင်ရည်ကိုတိုးတက်ကောင်းမွန်စေရုံသာမကအသုံးပြုသူအတွေ့အကြုံကိုလည်းအကောင်းဆုံးဖြစ်သည်။
ဖိုင်ဒေါင်းလုပ်ရယူရန်တောင်းဆိုမှုများအားလုံးကိုစတင်ပြီးပြီးနောက်ကျွန်ုပ်တို့သည်တောင်းဆိုမှုရလဒ်ကိုအဓိကချည်နှောင်ခြင်းနှင့်နောက်ဆက်တွဲအပြောင်းအလဲများပြုလုပ်ရန်စောင့်ဆိုင်းနိုင်သည်။ သတ်သတ်မှတ်မှတ်စစ်ဆင်ရေးများတွင် download လုပ်ထားသောဖိုင်ကိုသတ်မှတ်ထားသောလမ်းကြောင်းသို့သိမ်းဆည်းခြင်းသို့မဟုတ်ဒေါင်းလုပ်လုပ်ရန်ပျက်ကွက်သည့်ဖိုင်ကိုမှတ်တမ်းတင်ခြင်းပါဝင်နိုင်သည်။
သကြားလုံးစာကြည့်တိုက် သုံး. ဖိုင်များစွာကိုဒေါင်းလုပ်လုပ်ရန် escchronous http ကိုအကောင်အထည်ဖော်ရန်အတွက်နမူနာကုဒ်ဖြစ်သည်။
require 'vendor/autoload.php';
တစ် ဦး guzenhttp client ကိုဖန်တီးပြီးတစ်ပြိုင်နက်တည်းတောင်းဆိုမှုများနှင့်အချိန်ကုန်ဆုံးသောအများဆုံးအရေအတွက်ကဲ့သို့သောဘုံ parameters တွေကို configure လုပ်ပါ။
$client = new GuzzleHttpClient([
ထို့နောက်ဖိုင်ကိုဒေါင်းလုပ်ဆွဲရန်နှင့်ပြတ်တောင်းပြတ်တောင်းတောင်းဆိုမှုကိုတည်ဆောက်ရန် function တစ်ခုကိုသတ်မှတ်ပါ။
function downloadFile($client, $url, $path) {
ထို့နောက် Looping အားဖြင့် asynchronous http တောင်းဆိုမှုများကိုဖန်တီးရန်ဖိုင်များစွာကိုတစ်ချိန်တည်းတွင်ကူးယူနိုင်သည်။
$files = ['file1.jpg', 'file2.jpg', 'file3.jpg'];
ဒီဥပမာကနေ PHP မှာရှိတဲ့ asynchronous http download ယန္တရားကိုနက်ရှိုင်းစွာနားလည်နိုင်ပါတယ်။ သကြားလုံးများကဲ့သို့သောကိရိယာများနှင့်အတူကျွန်ုပ်တို့သည်ဖိုင်ကူးယူခြင်း၏ထိရောက်မှုကိုတိုးတက်အောင်မလုပ်နိုင်ပါ။ တိကျသော application လိုအပ်ချက်များပေါ် မူတည်. စနစ်စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေရန်သင်က curl သို့မဟုတ် swoole extensions ကဲ့သို့သောသင့်လျော်သောကိရိယာများကိုရွေးချယ်နိုင်သည်။