PHP တွင်လက်ရှိအလုပ်လုပ်နေသော directory ကို ရယူခြင်းသည်ဖိုင်များကိုဖတ်ခြင်း, လမ်းကြောင်း များများ ဖတ်ခြင်းစသည်တို့ကိုဖတ်ရှုနိုင်သည့်အခြေအနေများစွာတွင်အလွန်အရေးကြီးသောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်မှုနှစ်ခု၏အခန်းကဏ် president ကိုမိတ်ဆက်ပေးပြီးလက်ရှိအလုပ်လုပ်နေသောလမ်းညွှန်သို့သွားရန်သူတို့ကိုမည်သို့ပေါင်းစပ်ရမည်ကိုသရုပ်ပြပါလိမ့်မည်။
GetCWD () PHP တွင် built-in function တစ်ခုဖြစ်သည်။ ၎င်း၏အမည်အပြည့်အစုံသည်လက်ရှိအလုပ်လုပ်နေသောလမ်းညွှန်ကိုရယူရန်ဖြစ်သည်။ ဤလမ်းညွှန်သည် script ကိုကွပ်မျက်ခံရသည့်လမ်းညွှန်ဖြစ်သည်။ ပုံမှန်အားဖြင့်၎င်းသည်ပကတိလမ်းကြောင်းကိုပြန်ပို့သည်။
ဥပမာ -
<?php
echo getcwd();
?>
output ကိုဖြစ်လိမ့်မည်:
/var/www/html/project
ဤလမ်းကြောင်းသည်လက်ရှိ script script execution ၏လုပ်ဆောင်မှုလမ်းညွှန်ဖြစ်သည်။
Get_include_PATH () သည် PHP configuration တွင်ပါ 0 င်သည့်လမ်းကြောင်း (0 င်ခြင်း) ကိုရရှိရန်အသုံးပြုသည်။ အဆိုပါလမ်းကြောင်းတွင် semicolons (Windows) သို့မဟုတ် colons (Windows) သို့မဟုတ် colons (linux / macos) မှခွဲခြားထားသည့်လမ်းညွှန်များစွာပါ 0 င်နိုင်သည်။
ဥပမာ -
<?php
echo get_include_path();
?>
ရလဒ်ဥပမာ:
.:/usr/local/lib/php
ဒီမှာ အစက်က လက်ရှိလမ်းညွှန်ကိုကိုယ်စားပြုတယ်။
GetCWD () သည် လက်ရှိ အလုပ်လုပ် သော လမ်းညွှန်ကိုတိုက်ရိုက်ရနိုင်သော်လည်းတစ်ခါတစ်ရံတွင်လက်ရှိအလုပ်လုပ်နေသောလမ်းညွှန်၏တည်နေရာကိုသိရှိရန်လိုအပ်ပြီး, ယခုအချိန်တွင်အသုံးပြုမှုနှစ်ခုကိုပေါင်းစပ်ခြင်းသည်လမ်းကြောင်းကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ဖြစ်စေသည်။
<?php
// လက်ရှိအလုပ်လုပ်လမ်းညွှန်ကိုရယူပါ
$currentDir = getcwd();
echo "လက်ရှိအလုပ်လုပ် directory ဖြစ်ပါတယ်: " . $currentDir . "\n";
// ရယူ include_path
$includePath = get_include_path();
echo "include_path အကြောင်းအရာဖြစ်ပါတယ်: " . $includePath . "\n";
// သေတမ်းစာ include_path Arrays သို့ခွဲ
$paths = explode(PATH_SEPARATOR, $includePath);
// traversal လမ်းကြောင်း,output ကိုအပြည့်အဝလမ်းကြောင်း
foreach ($paths as $path) {
if ($path === '.' || $path === '') {
// လက်ရှိလမ်းညွှန်ကိုသုံးပါ getcwd() ရေှးယူနိုင်ခြင်း
$absolutePath = $currentDir;
} else {
// အခြားလမ်းကြောင်းများမပြောင်းလဲရှိနေဆဲဖြစ်သည်
$absolutePath = $path;
}
echo "ပကတိလမ်းကြောင်း: " . $absolutePath . "\n";
}
?>
လက်ရှိအလုပ်လုပ် directory ဖြစ်ပါတယ်: /var/www/html/project
include_path အကြောင်းအရာဖြစ်ပါတယ်: .:/usr/local/lib/php
ပကတိလမ်းကြောင်း: /var/www/html/project
ပကတိလမ်းကြောင်း: /usr/local/lib/php
Commath_path တွင်အစက်သည်လက်ရှိလမ်းညွှန်ကိုကိုယ်စားပြုသည် ။ ဤတွင်ကျွန်ုပ်တို့ GetCWD မှရရှိသောလမ်းကြောင်းနှင့်အစားထိုးသည်။
ဤနည်းအားဖြင့်လမ်းကြောင်းအပြည့်အစုံစာရင်းတစ်ခုစီကိုရနိုင်ပြီးလမ်းကြောင်းတစ်ခုစီသည် Pather Pat အကြွင်းအစဉ်အတင့်ဖြစ်သည်။
သင်၌အရင်းအမြစ်ဖိုင်အချို့ကို ထည့် သွင်းရန်လိုအပ်သည့်စီမံကိန်းတစ်ခုရှိသည်ဆိုပါစို့။ ဆွေမျိုးလမ်းကြောင်းကို Path Path Path Path Path Path Path မှရှာမတွေ့နိုင်မှုကိုရှောင်ရှားရန် Pather ကို Pather သို့ကူးပြောင်းရန်အထက်ပါနည်းလမ်းကိုသင်ပထမ ဦး ဆုံးအသုံးပြုနိုင်သည်။
ထို့အပြင်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ခြင်းကသင့်အားပိုမိုပြောင်းလွယ်ပြင်လွယ်များကိုစီမံခန့်ခွဲရန်ခွင့်ပြုသည်, အထူးသဖြင့်မတူညီသောပတ်ဝန်းကျင်သို့မဟုတ်နေရာချထားမှုများတွင်လမ်းကြောင်းများသည်ကွဲပြားခြားနားသောအခါ,
GetCwd () သည်လက်ရှိအလုပ်လုပ်သောလမ်းညွှန်ကိုရရှိသည်, များသောအားဖြင့်ဇာတ်ညွှန်းသည်လည်ပတ်နေသည့် directory ဖြစ်သော်လည်း code တွင်ပါ 0 င်ပါကသို့မဟုတ်လည်ပတ်နေသောပတ် 0 န်းကျင်တွင်ပါ 0 င်ပါကရလဒ်သည်ကွဲပြားနိုင်သည်။
ထည့်သွင်းထားသော php.ini တွင် configure လုပ်နိုင်သို့မဟုတ် set_include_path မှတဆင့် dynamatically သတ်မှတ်နိုင်ပါတယ်။
Path ခွဲထုတ်သူများသည် operating system အရသိရသည်ကွဲပြားသည်။ PHP built-in path_separator ကို အသုံးပြုခြင်းနှင့် directory_searator ကို အသုံးပြုခြင်းသည်လိုက်လျောညီထွေဖြစ်အောင်ပြုလုပ်နိုင်သည်။
GetCwd () သည် လက်ရှိအလုပ်လုပ်သောလမ်းညွှန်သို့အကြွင်းမဲ့လမ်းကြောင်းကိုတိုက်ရိုက်ပြန်ပို့သည်။
Get_includude_path () Returns PHP တွင် PHP တွင်ဆွေမျိုးနှင့်အကြွင်းမဲ့လမ်းကြောင်းများပါ 0 င်နိုင်သည်။
ပေါင်းစပ်ထားသောလမ်းကြောင်းများ (ဥပမာ - ကဲ့သို့သောလမ်းကြောင်းများအားလုံး) တွင်ပါ 0 င်သောလမ်းကြောင်းများအားလုံးကိုဖိုင်လည်ပတ်မှုကိုလွယ်ကူချောမွေ့စေသည့်ပကတိလမ်းကြောင်းများအဖြစ်ပြောင်းလဲနိုင်သည်။
ဤလုပ်ဆောင်ချက်နှစ်ခုကိုဆင်ခြင်တုံတရားဖြင့် အသုံးပြု. PHP developer များကဖိုင်လမ်းကြောင်းကိုပိုမိုကောင်းမွန်စွာထိန်းချုပ်နိုင်ပြီးလမ်းကြောင်းအမှားများကြောင့်ဖြစ်ပေါ်လာသောပြ troubl နာများကိုရှောင်ရှားနိုင်သည်။
<?php
// ဘက်စုံနမူနာလုပ်ဆောင်ချက်များ:ပြန်လာ include_path 中所有路径的ပကတိလမ်းကြောင်း数组
function getAbsoluteIncludePaths() {
$currentDir = getcwd();
$includePaths = explode(PATH_SEPARATOR, get_include_path());
$absolutePaths = [];
foreach ($includePaths as $path) {
if ($path === '.' || $path === '') {
$absolutePaths[] = $currentDir;
} else {
$absolutePaths[] = $path;
}
}
return $absolutePaths;
}
// Call ဥပမာ
$paths = getAbsoluteIncludePaths();
foreach ($paths as $p) {
echo $p . PHP_EOL;
}
?>
ဤကုဒ်နံပါတ်သည်အပြင်းအထန်လမ်းကြောင်းများပါ 0 င်သောပကတိလမ်းကြောင်းများပါ 0 င်သည်။ ၎င်းသည်နောက်ဆက်တွဲလမ်းကြောင်းအပြောင်းအလဲအတွက်အဆင်ပြေသည်။