စွမ်းဆောင်ရည် optimization သို့မဟုတ်မြင့်မားသောတိကျစွာအချိန်မလိုမီလိုအပ်သည့်ဖြစ်ရပ်များတွင် PHP သည်အလွန်လက်တွေ့ကျတဲ့ function ကိုထောက်ပံ့ပေးသည် ။ ဤလုပ်ဆောင်ချက်သည် Code's Runtime ကိုတိုင်းတာရန်အစွမ်းထက်သောကိရိယာတစ်ခုနှင့်အတူတိကျမှန်ကန်မှုရှိနိုင်သည်။ ဤဆောင်းပါးသည် HRTIME () , ပြန်လာသောတန်ဖိုးပုံစံ, ပုံမှန်အခြေအနေများနှင့်အစပြုသူများအားအစပြုသူများအားမြန်မြန်ဆန်ဆန်ကျွမ်းကျင်စွာမာသသဘောကူညီရန်အများအားဖြင့်ကြည့်ရှုခြင်းနှင့်ဥပမာအပြည့်အစုံကိုမိတ်ဆက်ပေးလိမ့်မည်။
HRTItime () သည် PHP 7.3 ကတည်းကစတင်မိတ်ဆက်ခဲ့သောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ၎င်း၏အမည်အပြည့်အစုံသည် "မြင့်မားသော resolution time" ဖြစ်ပြီး,
array hrtime(bool $as_number = false)
$ _Number : အကယ်. မှန်ကန်ပါက nanoseconds အရေအတွက်ကိုကိုယ်စားပြုသောကိန်းတစ်ခုသို့ပြန်ပို့သည်။ အကယ်. မှားယွင်းသော (ပုံမှန်) ဆိုလျှင်ဒြပ်စင်နှစ်ခုသောအရာဝတ်ထုနှစ်ခုပါ 0 င်သောခင်းကျင်းမှုတစ်ခုမှာစက္ကန့်များနှင့် nanoseconds များပါ 0 င်သည်။
$start = hrtime();
// အချို့သောအချိန်ကုန်သောကုဒ်ကိုကွပ်မျက်ပါ
usleep(500000); // Simulation Execution Time
$end = hrtime($start);
echo "အချိန်ကုန်စေသော:{$end[0]} စက်ဏန့် {$end[1]} 纳စက်ဏန့်";
ဒီဥပမာမှာ -
$ start သည်စတင်ချိန်ဖြစ်သည်
$ အဆုံးသည် ဒေါ်လာစျေးမှစတင်သော အချိန်ကြားကာလဖြစ်သည်
$ end [0] သည် စက္ကန့်အနည်းငယ်ကိုကိုယ်စားပြုသည်
$ end [1] ကျန်ရှိသော nanoseconds ကိုကိုယ်စားပြုတယ်
$start = hrtime(true);
// အချို့သောကုဒ်လုပ်ဆောင်ပါ
usleep(100000); // 100 毫စက်ဏန့်
$end = hrtime(true);
$elapsed = $end - $start;
echo "အချိန်ကုန်စေသော(纳စက်ဏန့်):$elapsed";
ဤအရေးအသားနည်းလမ်းသည်အထူးသဖြင့်တိကျသောစွမ်းဆောင်ရည်ခွဲခြမ်းစိတ်ဖြာမှုအတွက်အထူးသဖြင့်သင့်လျော်သည်။
သင်မတူကွဲပြားသောအကောင်အထည်ဖော်မှုဖြေရှင်းနည်းများကိုနှိုင်းယှဉ်ရန် HRTITIC () ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်:
function method1() {
$sum = 0;
for ($i = 0; $i < 10000; $i++) {
$sum += $i;
}
return $sum;
}
$start = hrtime(true);
method1();
$end = hrtime(true);
echo "method1 ကွပ်မျက်အချိန်(纳စက်ဏန့်):" . ($end - $start);
log လုပ်ရန်တောင်းဆိုမှုအချိန်ကို log လုပ်နိုင်သည်။
$requestStart = hrtime(true);
// အပြောင်းအလဲနဲ့တောင်းဆိုမှုယုတ္တိဗေဒ
file_get_contents("https://gitbox.net/api/test");
$requestEnd = hrtime(true);
$durationMs = ($requestEnd - $requestStart) / 1e6;
error_log("请求处理အချိန်ကုန်စေသော:{$durationMs} 毫စက်ဏန့်");
သင်၏ကိုယ်ပိုင် PHP ဝစ်ဂျက်သို့မဟုတ်မူဘောင်တွင် HRT အချိန် နှင့်အတူရိုးရှင်းသော benchmarking tool ကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။
function benchmark(callable $func) {
$start = hrtime(true);
$func();
$end = hrtime(true);
return ($end - $start) / 1e6; // 转为毫စက်ဏန့်
}
$time = benchmark(function () {
file_get_contents("https://gitbox.net/resource/data.json");
});
echo "函数အချိန်ကုန်စေသော:{$time} 毫စက်ဏန့်";
HRTItime () သည်တိကျမှန်ကန်မှုမြင့်မားသည်, သို့သော်၎င်းသည်ရေတိုစစ်ဆင်ရေးများတွင်တိုင်းတာမှုများအတွက်ပိုမိုသင့်လျော်သည်။
အကယ်. သင်သည် Windows စနစ်ကိုအသုံးပြုနေပါကသင်၏ PHP ဗားရှင်းသည် 7.3 နှင့်အထက်ဖြစ်ကြောင်းသေချာပါစေမဟုတ်ရင် HRT အချိန် () မရရှိနိုင်ပါ။
ပြန်လာသော nanosecond တန်ဖိုးသည်အလွန်ကြီးမားသည်။ အကယ်. သင်သည်မီလီစက္ကန့်သို့မဟုတ်စက္ကန့်ပိုင်းအသုံးပြုရန်လိုအပ်ပါက၎င်းကိုအညီပြောင်းရန်သတိရပါ။
HRTItime () သည် PHP မှပေးသောမြင့်မားသောအချိန်အတိအကျဖြစ်သည်။ ၎င်းသည်စွမ်းဆောင်ရည်ကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်မြင့်မားသောတိကျမှန်ကန်မှုလိုအပ်ချက်များမြင့်မားသည့်အခြေအနေများတွင်အသုံးပြုရန်အလွန်သင့်လျော်သည်။ Array ပုံစံသို့မဟုတ်ကိန်းဂဏန်း nanosecond form လုပ်သည်ဖြစ်စေ၎င်းသည်အမျိုးမျိုးသောစီးပွားရေးလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်သည်။ အစပြုသူများအတွက်၎င်းကိုကျွမ်းကျင်မှုသည်၎င်း၏အခြေခံအသုံးပြုမှုနှင့်တန်ဖိုးမြှင့်တည်ဆောက်ပုံကိုနားလည်ရန်လိုအပ်သည်။ ၎င်းကိုသင်၏ကိုယ်ပိုင်စီမံကိန်းတွင်အသုံးပြုရန်ကြိုးစားပါ။ စွမ်းဆောင်ရည်ခွဲခြမ်းစိတ်ဖြာခြင်းသည်ဘယ်တော့မှမလွယ်ကူကြောင်းသင်တွေ့လိမ့်မည်။