လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Path ပါ 0 င်သည့်အထက်လမ်းညွှန်ကိုရရန် Get_include_Path () ကို Dirname နှင့်သုံးပါ

Path ပါ 0 င်သည့်အထက်လမ်းညွှန်ကိုရရန် Get_include_Path () ကို Dirname နှင့်သုံးပါ

gitbox 2025-05-28

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်ကုဒ်ကိုပြန်လည်အသုံးပြုရန်အခြားဖိုင်များကိုမိတ်ဆက်ပေးရန်လိုအပ်သည်။ ဤသည် ကို များသောအားဖြင့် အသုံးပြု သည်, လိုအပ်ချက်များ , သို့သော်စီမံကိန်းတည်ဆောက်ပုံသည်ရှုပ်ထွေးပြီးဖိုင်အဆင့်များသည်မြင့်မားသည်နှင့်ဖိုင်များသည်အထူးသဖြင့်အရေးကြီးသည်။ Pather ၏ပြောင်းလွယ်ပြင်လွယ်ခြင်းနှင့်ကြံ့ခိုင်မှုတိုးတက်စေရန်အတွက် Get_includude_Path () နှင့် Dirname () function များကိုအတူတကွအသုံးပြုနိုင်ရန်နှင့်ဖိုင်၏အထက်လမ်းညွှန်ကိုရှာဖွေရန်နှင့်သတ်မှတ်ရန်အတူတကွအသုံးပြုနိုင်သည်။ ဤဆောင်းပါးသည်လမ်းကြောင်းပါ 0 င်သည့်အထက်လမ်းညွှန်ကိုရရှိရန်နှင့်၎င်းကိုတကယ့်စီမံကိန်းတစ်ခုသို့လျှောက်ထားရန်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမည်သို့ထိရောက်စွာအသုံးပြုရမည်ကိုရှင်းပြပါမည်။

1 ။ get_include_path () ?

Get_intude_Path () သည် current_path setting ကိုရရှိသော built-in function တစ်ခုဖြစ်သည်။ ထည့်သွင်းထားသော 0 င်းဖာဖ်သည် PHP မှအသုံးပြုသောဖိုင်များကိုရှာဖွေရန်အသုံးပြုသောဖိုင်များကိုရှာဖွေရန်အတွက်အသုံးပြုသောဖိုင်များကိုရှာဖွေခြင်းစနစ်၏ Path Separator (Semicolon) - "Linux နှင့် semicolon" တွင် "။

 echo get_include_path();

output သည်ဤကဲ့သို့သောလမ်းကြောင်းဖြစ်နိုင်သည်။

 .:/usr/local/lib/php

ဆိုလိုသည်မှာ PHP သည်လက်ရှိ directory ("။ ") ဖိုင်ကို ဦး စွာရှာဖွေလိမ့်မည်ဟုဆိုလိုသည်

2 ။ Dirname ဆိုတာဘာလဲ။

Dirname () သည် ပေးထားသောလမ်းကြောင်း၏မိဘလမ်းညွှန်ကိုပြန်ပို့သောအခြား built-in function ကိုဖြစ်သည်။

 echo dirname('/var/www/html/index.php'); // ထုတ်လုပ်ခြင်း: /var/www/html

ဤလုပ်ဆောင်ချက်သည်အထက်တန်းလွှာများကိုကိုယ်စားပြုသောအလွှာအရေအတွက်ကိုကိုယ်စားပြုရန်ဒုတိယ parameter ဖြင့်အသုံးပြုနိုင်သည်။

 echo dirname('/var/www/html/index.php', 2); // ထုတ်လုပ်ခြင်း: /var/www

၎င်းသည်ကျွန်ုပ်တို့အားမိဘလမ်းညွှန်များကိုမည်သည့်အဆင့်တွင်မဆိုအလွန်ပြောင်းလွယ်ပြင်လွယ်ရှိရန်ခွင့်ပြုသည်။

3 ။ get_include_path () နှင့် dirname ကို သုံးပါ

Current_includude_Path () မှတဆင့်လမ်းကြောင်းကိုကျွန်ုပ်တို့ရနိုင်ပြီးပြောင်းလွယ်ပြင်လွယ်သွားသောလမ်းကြောင်းစီမံခန့်ခွဲမှုရရှိရန်အတွက် 4 င်း၏လမ်းညွှန်ကိုရယူရန် Dirname () ကိုပေါင်းစပ်နိုင်သည်။ ဥပမာအားဖြင့်, အချို့သော autoloading ယန္တရားများတွင်ကျွန်ုပ်တို့သည် configuration file file ဖိုင်သို့မဟုတ်အတန်းစာကြည့်တိုက်ဖိုင်များနေထိုင်သောအထက်ပါလမ်းညွှန်ကိုအလိုအလျောက်ရှာဖွေလိုပေမည်။

နမူနာကုဒ်:

 <?php
// လက်ရှိတစ်ခုရယူပါ include_path ပထမ ဦး ဆုံးလမ်းညွှန်
$paths = explode(PATH_SEPARATOR, get_include_path());
$firstPath = $paths[0];

// ဒီလမ်းကြောင်းရဲ့အထက်လမ်းညွှန်ကိုရယူပါ
$parentDir = dirname($firstPath);

// ထုတ်လုပ်ခြင်း结果
echo "အထက်လမ်းညွှန်ဖြစ်ပါတယ်: " . $parentDir;
?>

ဤကုဒ် သည် ပထမဆုံးအကြိမ်ခွဲဝေမှုတစ်ခုစီကိုခင်းကျင်း။ ပထမလမ်းကြောင်းကိုအသုံးပြုသည်။ ဤအသုံးပြုမှုသည် configuration files များ, အရင်းအမြစ်လမ်းညွှန်များသို့မဟုတ် application directory များသို့မဟုတ် application directory များကိုရှာဖွေသောအခါဤအသုံးပြုမှုသည်အထူးသဖြင့်အသုံးဝင်သည်။

4 ။ လျှောက်လွှာဥပမာ - အလိုအလျောက်တင်ထားသောအမြစ်လမ်းကြောင်းကိုသတ်မှတ်ပါ

အမှန်တကယ်စီမံကိန်းများအနေဖြင့် application ၏ရင်းမြစ်မှဖိုင်များကိုရှာဖွေရန် Autoloader အတွက် Autoloader အတွက်ကျွန်ုပ်တို့သည်အခြေခံ path variable တစ်ခုကိုသတ်မှတ်နိုင်သည်။

 <?php
$baseDir = dirname(get_include_path(), 1);

// autoloader ကိုသတ်မှတ်ပါ
spl_autoload_register(function ($className) use ($baseDir) {
    $filePath = $baseDir . '/classes/' . $className . '.php';
    if (file_exists($filePath)) {
        require_once $filePath;
    }
});
?>

ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ခက်ခဲသောလမ်းကြောင်းများကိုရှောင်ရှားရန်စီမံကိန်း root directory မှအစပြုရန် Project Directory မှစတင်သော Unified Logic ကိုအကောင်အထည်ဖော်နိုင်သည်။

5 ။ အမှန်တကယ်စီမံကိန်းများ၏လမ်းကြောင်းဖွဲ့စည်းပုံနှင့်အတူပေါင်းစပ်

ကျွန်ုပ်တို့တွင်အောက်ပါစီမံကိန်းတည်ဆောက်ပုံရှိသည်ဆိုပါစို့။

 /var/www/html/
│
├── index.php
├── config/
│   └── app.php
├── classes/
│   └── User.php

ကျွန်ုပ်တို့သည် Classes / user.php ဖိုင်ကို index.php မှရည်ညွှန်းသည့်အခါကျွန်ုပ်တို့သည်အောက်ပါကုဒ်ကိုပြောင်းလွယ်ပြင်လွယ်စေရန်အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။

 <?php
set_include_path('/var/www/html');
require_once dirname(get_include_path()) . '/classes/User.php';

ဤဥပမာသည် Set_includude_Path () နှင့် Dirname () ကို ပေါင်းစပ်ခြင်းဖြင့်မျှော်လင့်ထားသည့်လမ်းညွှန်ကိုမည်သို့လျင်မြန်စွာရှာရမည်ကိုပြသသည်။

6 ။ အကျဉ်းချုပ်

ဤဆောင်းပါး၏နိဒါန်းအားဖြင့် Get_includude_Path () နှင့် Dirname () ပေါင်းစပ်မှုပေါင်းစပ်ခြင်းကကျွန်ုပ်တို့ကိုလျင်မြန်စွာကူညီနိုင်ပြီးစီမံကိန်း၏မည်သည့်အဆင့်တွင်မဆိုသာလွန်သော directory များကိုလျင်မြန်စွာရယူနိုင်ရန်ကျွန်ုပ်တို့ကိုလျင်မြန်စွာရှာဖွေနိုင်ကြောင်းကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်။ ဤနည်းလမ်းသည် hard-coded လမ်းကြောင်းများ၏ပြ problem နာကိုသိသိသာသာလျှော့ချပေးပြီး code ၏သယ်ယူပို့ဆောင်ရေးနှင့်ထိန်းသိမ်းခြင်းကိုတိုးတက်စေသည်။ ရှုပ်ထွေးသော PHP applications များသို့မဟုတ်မူဘောင်များတည်ဆောက်ရာတွင်၎င်းတို့ကိုလမ်းကြောင်းစီမံခန့်ခွဲမှုအတွက်စံလေ့ကျင့်ခန်းများအဖြစ်အသုံးပြုရန်အကြံပြုပါသည်။

တစ်ချိန်တည်းမှာပင် Path Patherning ၏လုံခြုံရေးနှင့်သဟဇာတဖြစ်စေရန်သေချာစေရန်အတွက်ပရိုဂရမ်စစ်ဆင်ရေးအပေါ် မူတည်. လမ်းကြောင်းအမှားများကိုရှောင်ရှားရန် realitath () , file_exists () နှင့်အခြားလုပ်ဆောင်ချက်များကိုအမြဲတမ်းပူးပေါင်းဆောင်ရွက်ရန်အကြံပြုသည်။

ပိုမိုအားကောင်းသည့်စီမံကိန်းတည်ဆောက်မှုတည်ဆောက်ရန် PHP ၏ဤ PHP ၏ဇာတိကိရိယာများကိုကောင်းစွာအသုံးပြုကြပါစို့။