လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> စဉ်ဆက်မပြတ်တည်ရှိရှိမရှိစစ်ဆေးရန် Array_Key_exists () ကိုသုံးပါ

စဉ်ဆက်မပြတ်တည်ရှိရှိမရှိစစ်ဆေးရန် Array_Key_exists () ကိုသုံးပါ

M66 2025-06-05

PHP တွင် Constant သည် script execution စဉ်အတွင်းတန်ဖိုးကိုမပြောင်းလဲနိုင်သောအမှတ်အသားဖြစ်သည်။ များသောအားဖြင့် define () function ကို Constants ကိုသတ်မှတ်ရန်အသုံးပြုသည်, သို့မဟုတ် သော့ချက် စာလုံးကိုသုံးနိုင်သည်။ သို့သော်အချို့သောအခြေအနေများတွင်စဉ်ဆက်မပြတ်ကိန်းဂဏန်းများကိုအထူးသဖြင့်ဤကိန်းဂဏန်းများကိုတတိယပါတီစာကြည့်တိုက်များ,

အသုံးများသော သတ်မှတ်ထားသော () function ကိုအပြင် PHP သည် built_defined_constants () တွင်ပါ 0 င်သော function ကိုထောက်ပံ့ပေးသည်။ ၎င်းကို array_key_Key_exists () function ကို တွဲ. အသုံးပြုခြင်းဖြင့်ကျွန်ုပ်တို့သည်ပိုမိုပြောင်းလွယ်ပြင်လွယ်။ တိကျသောအမြဲတမ်းတည်ရှိမှုကိုရရှိနိုင်ပါသည်။ ဤဆောင်းပါးသည်ဤပေါင်းစပ်မှု၏အသုံးပြုမှုနှင့်လက်တွေ့ကျသောလျှောက်လွှာများကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ get_defined_constants () function ကိုမိတ်ဆက်

Get_Defined_constants () function သည်သတ်မှတ်ထားသောအမြဲတမ်းသတ်မှတ်ထားသောကိန်းဂဏန်းများပါ 0 င်သည့် multidimensional ခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။ ခင်းကျင်းမှု၏ဖွဲ့စည်းပုံမှာအောက်ပါအတိုင်းဖြစ်သည် -

 [
    'Core' => [...],
    'pcre' => [...],
    'user' => [
        'MY_CONSTANT' => 'value',
        ...
    ],
    ...
]

၎င်းတို့အနက်တစ်စိတ်တစ်ပိုင်းဖြစ်သော အသုံးပြုသူ သည်အသုံးပြုသူအားအမြဲတမ်းသတ်မှတ်ထားသောစဉ်ဆက်မပြတ်ဖြစ်သည်။ အခြားအစိတ်အပိုင်းများကို PHP တွင်တည်ဆောက်ထားသောသို့မဟုတ်တိုးချဲ့ခြင်းကိုသတ်မှတ်သည်။

2 ။ array_key_exists () စဉ်ဆက်မပြတ်တည်ရှိရှိမရှိစစ်ဆေးပါ

Get_Defined_constants ('user) array ကိုရရှိခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် user-defined constants အားလုံးကိုစာရင်းပြုစုပြီး array_key_key_exists () ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်:

 define('MY_SITE_URL', 'https://m66.net');

$userConstants = get_defined_constants(true)['user'];
if (array_key_exists('MY_SITE_URL', $userConstants)) {
    echo 'မြဲစဲှ MY_SITE_URL သတ်မှတ်,တန်ဖိုး:' . $userConstants['MY_SITE_URL'];
} else {
    echo 'မြဲစဲှ MY_SITE_URL undefined';
}

ဤဥပမာတွင်ကျွန်ုပ်တို့သည် user-defined constants array_key_Unters (" array_key_key_exists) ကိုသုံးရန်ပထမ ဦး ဆုံး My_Site_constants (Trass) ကို သုံးပါ။

3 ။ သတ်မှတ်ခြင်းနှင့်နှိုင်းယှဉ်ခြင်း ()

သတ်မှတ်ထားသော () function ကိုအသုံးပြုခြင်းသည်စဉ်ဆက်မပြတ် system ရှိ ConteSewants ၏အဓိပ္ပါယ်ဖွင့်ဆိုချက်ကိုခွဲခြမ်းစိတ်ဖြာရန်လိုအပ်သည့်အခါစဉ်ဆက်မပြတ်တည်ရှိခြင်းရှိမရှိစစ်ဆေးနိုင်သည်။ ဥပမာအားဖြင့်, သင်၏အောက်ပါကုဒ်ကို သုံး. My_ ဖြင့်စသည့်ကိန်းဂဏန်းများအားလုံးကိုပုံနှိပ်နိုင်သည်။

 foreach (get_defined_constants(true)['user'] as $key => $value) {
    if (strpos($key, 'MY_') === 0) {
        echo "$key => $value\n";
    }
}

4 ။ လက်တွေ့ကျသော application အခြေအနေများ

အောက်ဖော်ပြပါအချက်များသည်အဆင့်မြင့်ပတ်ဝန်းကျင်နေရာများတွင်အထူးသဖြင့်ပုံမှန်ဖွဲ့စည်းထားသောဆုံးဖြတ်ချက်ချခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။

 // config.php
define('ENVIRONMENT', 'production');

// init.php
$userConstants = get_defined_constants(true)['user'];
if (array_key_exists('ENVIRONMENT', $userConstants)) {
    if ($userConstants['ENVIRONMENT'] === 'production') {
        error_reporting(0);
    } else {
        error_reporting(E_ALL);
    }
} else {
    // ပုံမှန်ပတ်ဝန်းကျင်
    define('ENVIRONMENT', 'development');
    error_reporting(E_ALL);
}

ဤနည်းအားဖြင့်အမြဲတမ်းပြောင်းလွယ်ပြင်လွယ်ရှိကြောင်းကျွန်ုပ်တို့သေချာစေရန်သာမကဘဲကိန်းဂဏန်းများထပ်ခါတလဲလဲပြောရလျှင်သတိပေးချက်များကိုကာကွယ်နိုင်သည်။

ကောက်ချက်

Get_Defined_constants () နှင့် array_key_cists () ကို ပေါင်းစပ်ခြင်း () နှင့် array_key_celists () သည်ရိုးရာ သတ်မှတ်ထားသော () function ထက်ပိုမိုအစွမ်းထက်။ ကျယ်ပြန့်သောနည်းလမ်းဖြစ်သည်။ ၎င်းသည်အထူးသဖြင့်စီမံကိန်းများနှင့် Multi-module ဗိသုကာများတွင်လက်ရှိ script run ဝန်းကျင်၌အမြဲတမ်းအဓိပ္ပာယ်ဖွင့်ဆိုချက်များကိုနက်နက်ရှိုင်းရှိုင်းနားလည်ရန်နှင့်စီမံခန့်ခွဲရန်ခွင့်ပြုသည်။ ၎င်းကို debugging, configuration checking သို့မဟုတ် runtime control logic အတွက်အသုံးပြုသည်ဖြစ်စေဤနည်းလမ်းသည်ကျွမ်းကျင်ပြီးအသုံးချသင့်သည်။