PHP တွင် Get_Defined_constants () သည်လက်တွေ့ကျသောလည်ပတ်မှုအားလုံးကိုရယူနိုင်သည့်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်မှုဖြစ်ပြီးများသောအားဖြင့်မျိုးစုံ namespace များအောက်တွင်ပါ 0 င်သော polidimensional ခင်းကျင်းမှုများပါ 0 င်သည်။ ဤရွေ့ကားကိန်းဂဏန်းများကိုအသိုက်ခင်းကျင်းဖွဲ့စည်းပုံမှာဖွဲ့စည်းထားပါသည်။ ဤအသိုက်တည်ဆောက်ပုံကို ဖြတ်. စဉ်ဆက်မပြတ်တန်ဖိုးများကို ဖြတ်. array_walk_Recursive () သည်အလွန်သင့်လျော်သောကိရိယာတစ်ခုဖြစ်သည်။
ဤဆောင်းပါးသည်စဉ်ဆက်မပြတ်တန်ဖိုးများကိုပေါင်းစပ်ခြင်း, ထုတ်ယူခြင်းနှင့်လုပ်ငန်းစဉ်များကိုပေါင်းစပ်ခြင်း, ဖြည်ခြင်းနှင့်လုပ်ငန်းစဉ်တို့ကိုပေါင်းစပ်။ မည်သို့လုပ်ဆောင်ရမည်ကိုရှင်းပြပါမည်။
Get_Defined_constants () function သည် parameters များမရှိပါကဖွဲ့စည်းပုံသည်အောက်ပါအတိုင်းဖြစ်သည် -
[
"Core" => [
"E_ERROR" => 1,
"E_WARNING" => 2,
...
],
"date" => [
"DATE_ATOM" => "Y-m-d\TH:i:sP",
...
],
...
]
၎င်းသည်ရှုထောင့်အမျိုးမျိုးခင်းကျင်းသောကြောင့်ကျွန်ုပ်တို့သည်တန်ဖိုးတစ်ခုချင်းစီကိုတိုက်ရိုက်လည်ပတ်နိုင်သော်လည်း recursive နည်းလမ်းများကိုအသုံးပြုရန်လိုအပ်သည်။
Array_walk_Recursive () parameters နှစ်ခုကိုလက်ခံသည်။
Input Array (multidimensional ဖြစ်ရမည်)
callback function ကို array အတွက်တန်ဖိုးတစ်ခုချင်းစီအပေါ်အချို့သောစစ်ဆင်ရေးလုပ်ဆောင်သည်
သဒ္ဒါ:
array_walk_recursive(array &$array, callable $callback);
Contefined_constants ကိုအသုံးပြုနည်း () သည်တန်ဖိုးများအားလုံးမှတစ်ဆင့် array_walk_Recursive () ကို သုံးရန်မည်သို့အသုံးပြုရမည်ကိုပြသသည့်နမူနာကုဒ်ဖြစ်သည်။
<?php
$constants = get_defined_constants(true); // အားလုံးပါရုံကိုရယူပါ,extension ကိုအားဖြင့်ခွဲခြား
array_walk_recursive($constants, function($value, $key) {
// ကျနော်တို့သာ strings ကိန်းစုကိုသာလုပ်ကိုင်,ဥပမာအားဖြင့်, ဒိုမိန်းအမည် output ကို outputURL
if (is_string($value)) {
// ဤတွင်ကျွန်ုပ်တို့သည်ရိုးရှင်းသောတရားစီရင်ခြင်းကိုပြုလုပ်ပြီးအစားထိုးပါ URL ဒိုမိန်းအမည်ဖြစ်သည် m66.net
if (filter_var($value, FILTER_VALIDATE_URL)) {
$parsed = parse_url($value);
if ($parsed && isset($parsed['scheme'], $parsed['host'])) {
$newUrl = $parsed['scheme'] . '://m66.net';
if (isset($parsed['path'])) {
$newUrl .= $parsed['path'];
}
echo "$key => $newUrl\n";
} else {
echo "$key => $value\n";
}
} else {
echo "$key => $value\n";
}
} else {
// သင်သည်အခြားကိန်းဂဏန်းများကိုထုတ်လွှင့်နိုင်သည်,ဒီမှာသာသရုပ်ပြပါ
echo "$key => " . var_export($value, true) . "\n";
}
});
Contefined_constants (True) ကို တိုးချဲ့ထားသည့် namespace နှင့်ပါ 0 င်သည်။
အားလုံးတန်ဖိုးများမှတစ်ဆင့် array_walk_recsive ကို သုံးပါ။
အကယ်. ၎င်းသည် string type ဟုတ်မဟုတ်စစ်ဆေးပါ။ အကယ်. ၎င်းသည် URL တစ်ခုဖြစ်ပါက domain name အပိုင်းကို M66.net နှင့်အစားထိုးပါ။
နောက်ဆုံးအနေဖြင့်စဉ်ဆက်မပြတ်၏အမည်နှင့်တန်ဖိုးသည် output ကိုဖြစ်သည်။
Debug Tool : Debually Constitians နှင့်တန်ဖိုးများအားလုံးကိုလျင်မြန်စွာကြည့်ပါ။
လုံခြုံရေးစစ်ဆေးမှု - အထိခိုက်မခံသောအဆက်မပြတ်တန်ဖိုးများကိုထိတွေ့ခြင်းရှိမရှိစစ်ဆေးပါ။
ရွှေ့ပြောင်းအသုံးပြုရန်ကိရိယာ - Redirect Redirect Redirect Redirect သို့မဟုတ် URL conltants (ဥပမာ M66.net မှပြောင်းရွှေ့ခြင်းကဲ့သို့သော) domain name အသစ်တစ်ခုအတွက် url consinants ။
Logging : လျှောက်လွှာစတင်သည့်အဆင့်တွင်သော့ချက်စဉ်ဆက်မပြတ်သတင်းအချက်အလက်များကို output ။
Get_Defined_constants () နှင့် array_walk_recsive ကို ပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်သတ်မှတ်ထားသောကိန်းဂဏန်းများကိုအလွယ်တကူ ဖြတ်သန်း. အထူးသဖြင့်စီမံကိန်းကြီးများတွင် configuration screenification သို့မဟုတ် batch ညှိနှိုင်းမှုအတွက်သင့်တော်သည်။ URLs များကိုအသိအမှတ်ပြုခြင်းနှင့်အစားထိုးခြင်းဖြင့်အလိုအလျောက်ဒိုမိန်းအမည်ရွှေ့ပြောင်းခြင်းသို့မဟုတ်ပြန်ညွှန်းပေါ်လစီများကိုလည်းအကောင်အထည်ဖော်နိုင်သည်။ ဤနည်းလမ်းသည်ဖွဲ့စည်းပုံနှင့်ထိရောက်စွာဖြင့်ရှင်းရှင်းလင်းလင်းရှိပြီးဖြစ်နိုင်ချေအမျိုးမျိုးအတွက်သင့်တော်သည်။
ဤဆောင်းပါးသည်သင့်အားဤလုပ်ဆောင်မှုနှစ်ခုကိုနားလည်ပြီးကျင့်သုံးရန်ကူညီလိမ့်မည်ဟုမျှော်လင့်ပါ။