လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Parse_ini_File နှင့် configuration file လမ်းကြောင်းကိုဖတ်ရန် Get_include_Path () ကိုသုံးပါ။

Parse_ini_File နှင့် configuration file လမ်းကြောင်းကိုဖတ်ရန် Get_include_Path () ကိုသုံးပါ။

gitbox 2025-05-26

စာဖတ်ခြင်း configuration files များကိုဖတ်ရှုခြင်းသည် PHP စီမံကိန်းဖွံ့ဖြိုးတိုးတက်မှုတွင်အလွန်အသုံးများသောလိုအပ်ချက်ဖြစ်သည်။ configuration files များသည်များသောအားဖြင့် .ini format ဖြင့်ပြုလုပ်လေ့ရှိပြီး Parse_ini_File () function ကိုဖတ်ရှုနိုင်သည်။ သို့သော်စီမံကိန်းတည်ဆောက်ပုံသည်ရှုပ်ထွေးပြီး configuration files များကို directions များစွာကိုဖြန့်ဖြူးထားသည့်အခါ,

ဤပြ problem နာကိုဖြေရှင်းရန်ဤဆောင်းပါးသည် code ၏ configuration files များကိုပိုမိုကောင်းမွန်စေရန် configuration files များကိုရှာဖွေရန်နှင့် configuration files များကို ရှာဖွေရန်နှင့်ဖတ်ရှုရန်မည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးသည်

အခြေခံဗဟုသုတပြန်လည်သုံးသပ်ခြင်း

Parse_ini_file ()

Parse_ini_File () သည် PHP မှဖိုင်များကို .ini format ကို array သို့ခွဲခြမ်းစိတ်ဖြာရန် PHP မှပေးသော function တစ်ခုဖြစ်သည်။ အသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 $config = parse_ini_file('/path/to/config.ini');

အပိုင်း (အပိုင်း) ကိုခွဲခြမ်းစိတ်ဖြာခြင်းရှိမရှိဒုတိယ parameter ကိုထောက်ပံ့သည်။

 $config = parse_ini_file('/path/to/config.ini', true);

get_include_path ()

get_include_path () သည် PHP တွင် ပါ 0 င ်သောလုပ်ဆောင်မှုများကိုအသုံးပြုသောအခါသို့မဟုတ် လိုအပ်သည့် လုပ်ဆောင်မှုများကိုအသုံးပြုသောလမ်းကြောင်းများစာရင်းဖြစ်သောလမ်းကြောင်းများစာရင်းဖြစ်သည်။ Path_separator (UNIX) တွင် "UNIX : Windows တွင် ) ဖြင့်ခွဲခြားထားသည်။

ဥပမာအားဖြင့်:

 echo get_include_path();
// ထုတ်လုပ်ခြင်း:/var/www/config:/usr/share/php

configuration ဖိုင်လမ်းကြောင်းများ၏ပြောင်းလွယ်ပြင်လွယ် Search

configuration file path ကိုထည့်သွင်းခြင်းတွင်ထည့်သွင်းခြင်း,

အောက်ပါတို့သည် constat_path files တွင်အလိုအလျောက်ရှာဖွေခြင်းနှင့်ခွဲခြမ်းစိတ်ဖြာခြင်းကိုအလိုအလျောက်ရှာဖွေခြင်းနှင့်ခွဲခြမ်းစိတ်ဖြာခြင်းကိုအောက်ပါလက်တွေ့လုပ်ဆောင်ချက်ဥပမာတစ်ခုဖြစ်သည်။

 function load_config($filename, $use_sections = false) {
    $paths = explode(PATH_SEPARATOR, get_include_path());
    foreach ($paths as $path) {
        $full_path = rtrim($path, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR . $filename;
        if (file_exists($full_path)) {
            return parse_ini_file($full_path, $use_sections);
        }
    }
    throw new Exception("configuration ဖိုင် '{$filename}' မတွေ့ပါ。");
}

အသုံးပြုမှုဥပမာ

သင်၏စီမံကိန်းတည်ဆောက်ပုံသည်အောက်ပါအတိုင်းဖြစ်သည်ဆိုပါစို့။

 /project
├── config/
│   └── app.ini
├── public/
│   └── index.php

ဤအရာကိုစီမံကိန်းရေးထည့်ရန် index.php တွင်၎င်းကိုသတ်မှတ်နိုင်သည်။

 set_include_path(get_include_path() . PATH_SEPARATOR . '/project/config');

try {
    $config = load_config('app.ini', true);
    echo 'ဒေတာဘေ့စ်အိမ်ရှင်: ' . $config['database']['host'];
} catch (Exception $e) {
    echo 'အမှား: ' . $e->getMessage();
}

လျှောက်လွှာဇာတ်လမ်းတစ်ပုဒ်တိုးချဲ့ခြင်း

  1. Multi- ပတ်ဝန်းကျင်ပြင်ဆင်မှု switching <br> <br> ထည့်သွင်းထားသော / စီမံကိန်း / config / dev နှင့် / project / project / prod / prod / prod / prod / prod / prod / prod , ကွဲပြားခြားနားသောလမ်းကြောင်းများထည့်သွင်းခြင်းနှင့်သက်ဆိုင်ရာ configuration ကိုအလိုအလျောက်ထည့်ပါ။

  2. Modular Configurations <br> <br> module တစ်ခုစီတွင် configuration file တစ်ခုရှိပြီး module လမ်းကြောင်းကိုထည့်သွင်းထားသော loading logic ကိုအကောင်အထည်ဖော်ရန်ထည့်သွင်းထားသည်။

  3. Plug-in စနစ်ထောက်ပံ့မှု <br> <br> Plug-in သည်အဓိကပရိုဂရမ်ကိုအတိအလင်းသတ်မှတ်ခြင်းမရှိဘဲ 4 င်း၏ကိုယ်ပိုင် confark file လမ်းကြောင်းကိုမှတ်ပုံတင်နိုင်သည်။

လုံခြုံရေးအကြံဥာဏ်

  • https://gitbox.net/config/config/appig/app.ini ကဲ့သို့သောအထိခိုက်မခံသောအချက်အလက်များပါ 0 င်သောအချက်အလက်များပါ 0 င်သည့်နေရာများမရှိပါ။

  • configuration file directory ကိုဝင်ရောက်ခွင့်ကိုတားမြစ်ရန် .Htaccess သို့မဟုတ် web server configuration ကိုသုံးပါ။

အကျဉ်းချုပ်

Get_includude_Path () Parse_ini_File () နှင့်တွဲဖက်ခြင်းဖြင့် configuration file path path management issues issues နာများကိုအလွန်အမင်းဖြေရှင်းနိုင်သည်။ ၎င်းသည်လမ်းကြောင်းခက်ခဲသောလမ်းကြောင်းများကိုလျော့နည်းစေရုံသာမကစနစ်၏ပြောင်းလွယ်ပြင်လွယ်နှင့်ပြုပြင်ခြင်းကိုလည်းတိုးတက်စေသည်။ ဤနည်းစနစ်ကိုကျွမ်းကျင်သည်။ အလယ်အလတ်နှင့် PPP စီမံကိန်းများအတွက်အထူးသဖြင့်အရေးကြီးသည်။