PHP တွင်ကိန်းဂဏန်းများသည် script ူမန်မိာိုံင်ငံနေဖြင့် ပြောင်းလဲ. မရပါ။ သတ်မှတ်ခြင်းကိန်းသားများကိုပုံမှန်အားဖြင့် သတ်မှတ်ခြင်း () function ကိုအသုံးပြုသည်။ စဉ်ဆက်မပြတ်တည်ရှိပြီး runtime တွင်၎င်း၏တန်ဖိုးကိုပြောင်းလဲခြင်းရှိမရှိဆုံးဖြတ်သည့်အခါ () နှင့် စဉ်ဆက်မပြတ် () ကို အသုံးပြုသောလုပ်ဆောင်ချက်နှစ်ခုကိုအသုံးပြုသည်။ ဤဆောင်းပါးသည်အတိမ်အနက်ကိုဤလုပ်ဆောင်မှုနှစ်ခုကိုမည်သို့အသုံးပြုရမည်နှင့်ပြောင်းလွယ်ပြင်လွယ်လည်ပတ်နိုင်ရန်၎င်းတို့ကိုမည်သို့ပေါင်းစပ်ရမည်ကိုမိတ်ဆက်ပေးပါမည်။
သတ်မှတ်ထားသော (string $ name): Bool
တစ် ဦး စဉ်ဆက်မပြတ် $ အမည်ကို သတ်မှတ်ထားရှိမရှိဆုံးဖြတ်သည်။ boolean value ကိုပြန်ပို့သည်။
စဉ်ဆက်မပြတ် (string $ name): ရောထွေး
စဉ်ဆက်မပြတ် $ အမည်၏ တန်ဖိုးကိုပြန်ပို့သည်။ အကယ်. စဉ်ဆက်မပြတ် underfined လျှင်အမှားတစ်ခုပစ်ချလိမ့်မည်။
ဤလုပ်ဆောင်ချက်နှစ်ခုသည် dynamic အဆက်မပြတ်အမည်များကိုအထူးသဖြင့်ပြုပြင်ပြောင်းလဲမှု, plug-in တင်ခြင်း,
အမြဲတမ်းသတ်မှတ်ရန် သတ်မှတ်ခြင်း () ကို သုံးပါ။
define('APP_ENV', 'production');
ထို့နောက်၎င်း၏တန်ဖိုးကို app_env စဉ်ဆက်မပြတ်မှတဆင့်တိုက်ရိုက်ရည်ညွှန်းနိုင်သည်။
အချို့ဖြစ်ရပ်များတွင် configuration files များ (သို့) ပြင်ပစနစ်များမှလာနိုင်သည်။ ၎င်းတို့ကိုအသုံးမပြုမီသတ်မှတ်ထားခြင်းရှိမရှိစစ်ဆေးနိုင်သည်။
if (defined('APP_ENV')) {
echo 'လက်ရှိပတ်ဝန်းကျင်ဖြစ်ပါတယ်: ' . APP_ENV;
} else {
echo 'undefined ပတ်ဝန်းကျင်ကော်ပိုရေးရှင်း';
}
အကယ်. သင်သည် variable များမှတဆင့်စဉ်ဆက်မပြတ်အမည်များကိုရည်ညွှန်းလိုပါက စဉ်ဆက်မပြတ် () ကို သုံးရန်လိုအပ်သည်။
$constName = 'APP_ENV';
if (defined($constName)) {
echo 'လက်ရှိပတ်ဝန်းကျင်ဖြစ်ပါတယ်: ' . constant($constName);
}
ဤနည်းလမ်းကိုမကြာခဏအစိတ်အပိုင်းများကို confention configuration သို့မဟုတ် plug-in ယန္တရားများတွင်မကြာခဏအသုံးပြုသည်။
$plugin = 'Uploader';
$constName = 'PLUGIN_' . strtoupper($plugin) . '_ENABLED';
if (defined($constName) && constant($constName) === true) {
echo "ပလပ်အင် {$plugin} enabled";
}
သတ်မှတ်ထားသောပတ် 0 န်းကျင်နှင့်အညီ configuration ကို dynamuration ကို dynamuration ကို dynamuration ကိုပြောင်းလဲစေသော Multiaticative configuration file တစ်ခုရှိသည်ဆိုပါစို့။
define('APP_ENV', 'development');
$configName = 'CONFIG_' . strtoupper(APP_ENV) . '_DB';
define('CONFIG_DEVELOPMENT_DB', 'mysql://user:[email protected]/devdb');
define('CONFIG_PRODUCTION_DB', 'mysql://user:[email protected]/proddb');
if (defined($configName)) {
$dbConfig = constant($configName);
echo "ဒေတာဘေ့စ်ဆက်သွယ်မှုသတင်းအချက်အလက်:$dbConfig";
}
သငျသညျခွင့်ပြုချက်အရေအတွက်စီးရီးကိုသတ်မှတ်: ဆိုပါစို့:
define('PERM_USER_EDIT', true);
define('PERM_USER_DELETE', false);
ခွင့်ပြုချက်ကိုဆုံးဖြတ်ရန် သတ်မှတ်ထားသော () နှင့် စဉ်ဆက်မပြတ် () ကို ပေါင်းစပ်ရန် function ကိုသုံးနိုင်သည်။
function hasPermission(string $perm): bool {
$permConst = 'PERM_' . strtoupper($perm);
return defined($permConst) && constant($permConst) === true;
}
if (hasPermission('user_edit')) {
echo 'အသုံးပြုသူများကိုတည်းဖြတ်ရန်ခွင့်ပြုချက်ရှိသည်';
}
စဉ်ဆက်မပြတ် nextant အမည် () တစ် ဦး string ကိုဖြစ်ရမည်။ အကယ်. စဉ်ဆက်မပြတ်မတည်ရှိပါက သတိပေးချက်ကို ပစ်ချလိမ့်မည်။
သတ်မှတ်ထားသော () ကို အသုံးပြုခြင်းကိုအသုံးပြုခြင်းသည် undefined conteStants ကြောင့်ဖြစ်ပေါ်လာသောအမှားများကိုလုံခြုံစွာတားဆီးနိုင်သည်။
စဉ်ဆက်မပြတ်အမည်များသည်စာလုံးအကြီးအသေးအရေး အ ကြီးဖြစ်စေသည် ။
သတ်မှတ်ထားသော () နှင့် စဉ်ဆက်မပြတ် () စဉ်ဆက်မပြတ် () သည် dynamic constants ကိုကိုင်တွယ်ရန်အစွမ်းထက်သောကိရိယာများဖြစ်ပြီးအထူးသဖြင့် dynamic configuration loading, plug-in စနစ်များ, Plug-in စနစ်များ, ဤလုပ်ဆောင်ချက်နှစ်ခုကိုအသုံးပြုခြင်းသည်သင့် PHP အစီအစဉ်ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်,