Linux နှင့် MacOS ကဲ့သို့သော unix ကဲ့သို့သောစနစ်များတွင်သင်္ကေတ link (soft link များဟုလည်းလူသိများသည့်သင်္ကေတ link) သည်အလွန်အသုံးဝင်သောဖိုင်စနစ်ဖြစ်သည်။ ၎င်းသည်သင့်အားအခြားလမ်းကြောင်းမှတစ်ဆင့်၎င်းတို့ကိုကြည့်ရှုရန်ခွင့်ပြုထားသောဖိုင် (သို့) လမ်းညွှန်တစ်ခုအတွက်ဖြတ်လမ်းများကိုဖန်တီးရန်ခွင့်ပြုသည်။ PHP သည်ထိုကဲ့သို့သောလင့်ခ်များကိုဖန်တီးရန် built-in function symlink () ကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည်အခြေခံများမှ စ. PHP ၏ Symlink (Symlink () function ကိုဖန်တီးရန်နှင့်စီမံခန့်ခွဲရန် PHP ၏ Symlink () function ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာရန်သင့်အားစာသင်ခန်းများဖန်တီးရန်နှင့်သင်မြန်မြန်ဆန်ဆန်စတင်ရန်ကူညီရန်လက်တွေ့ကျပုံများပေးပါမည်။
သင်္ကေတ link သည်အခြားဖိုင်သို့မဟုတ်လမ်းညွှန်တစ်ခု၏လမ်းကြောင်းကိုရည်ညွှန်းသည်။ ၎င်းသည် Windows Systems တွင် "shortcut" နှင့်တူသော်လည်း၎င်းသည်ပိုမိုအားကောင်းလာသည်။ သင်အသုံးပြုနိုင်သည်
ရှုပ်ထွေးသောလမ်းကြောင်းများသို့ဝင်ရောက်ခွင့်ကိုရိုးရှင်းအောင်ပြုလုပ်ခြင်း,
အချို့သောအရင်းအမြစ်များကိုစီမံကိန်းမျိုးစုံဖြင့်မျှဝေပါ။
Reade_2025_05 သို့ လက်ရှိ ချိတ်ဆက်မှုကဲ့သို့သောဗားရှင်းစီမံခန့်ခွဲမှုပုံစံကိုဖန်တီးပါ။
ဖိုင်ဖွဲ့စည်းပုံကို redirect လုပ်ထားပေမယ့်ဒေတာကိုမိတ္တူကူးမထားဘူး။
PHP မှ Symlink () function ကိုအောက်ပါအတိုင်းသတ်မှတ်ထားသည် -
bool symlink(string $target, string $link)
$ Target : သင်ချိတ်ဆက်လိုသည့်မူရင်းဖိုင်သို့မဟုတ်လမ်းညွှန်သို့လမ်းကြောင်း,
$ link : သင်ဖန်တီးလိုသည့်သင်္ကေတ link သို့လမ်းကြောင်း။
အကယ်. မှန်ကန်သော အောင်မြင်လျှင်မှားယွင်းသောပျက်ကွက်ပါကမှားယွင်းသော အယူမှား ပြန်လာသည်။
မှတ်ချက် - ဤလုပ်ဆောင်မှုကိုအသုံးပြုခြင်း PHP script သည် File System Permission အလုံအလောက်ရှိပြီးအချို့မျှဝေထားသောအိမ်ရှင်များသို့မဟုတ်ကန့်သတ်ထားသည့်ပတ်ဝန်းကျင်တွင်မသန်မစွမ်းနိုင်ရန်လိုအပ်သည်။
အောက်ပါဥပမာသည် /var/www/html/storage/data.json သို့ /VAR/WWW/HTML/Public/Data.json သို့ဖိုင်တစ်ပုဒ်ကိုချိတ်ဆက်ထားသည်။
<?php
$target = '/var/www/html/storage/data.json';
$link = '/var/www/html/public/data.json';
if (symlink($target, $link)) {
echo "သင်္ကေတ link ဖန်တီးမှုကိုအောင်မြင်စွာ";
} else {
echo "ဖန်တီးမှုပျက်ကွက်";
}
?>
ဤ script ကိုဖွင့်ပြီးနောက်, ဒေတာအမည်ရှိ diamed.json ကို အများပြည်သူ လမ်းညွှန်တွင်တွေ့ရလိမ့်မည် ။
directory တစ်ခုလုံးအတွက် link များကိုလည်းသင်ဖန်တီးနိုင်သည်။
<?php
$target = '/var/www/html/storage/';
$link = '/var/www/html/public/storage';
if (symlink($target, $link)) {
echo "目录သင်္ကေတ link ဖန်တီးမှုကိုအောင်မြင်စွာ";
} else {
echo "ဖန်တီးမှုပျက်ကွက်";
}
?>
သိုလှောင်မှု directory ကို web access အတွက် အများသုံး လမ်းညွှန်သို့ချိတ်ဆက်ခြင်းစသည့် Laravel ကဲ့သို့သော laravel ကဲ့သို့သောမူဘောင်များတွင်တွေ့ရလေ့ရှိသည်။
ဖြန့်ချိရေးလမ်းညွှန်၏ဗားရှင်းများစွာရှိသည်ဟုမြင်ယောင်ကြည့်ပါ။
/var/www/releases/
├── v1.0.0/
├── v1.1.0/
└── v2.0.0/
သင် / var / www / html / html / current ကို အမြဲတမ်းနောက်ဆုံးပေါ်ဗားရှင်းကိုအမြဲတမ်းညွှန်ပြလိုသည်။ PHP တွင် dynamally link တစ်ခုဖန်တီးနိုင်သည်။
<?php
$newVersion = 'v2.0.0';
$target = "/var/www/releases/$newVersion";
$link = '/var/www/html/current';
if (is_link($link)) {
unlink($link); // ပထမ ဦး ဆုံးအဟောင်းသင်္ကေတ link ကိုဖျက်ပါ
}
if (symlink($target, $link)) {
echo "ပြီးပြီ current Link ကို update လုပ် $newVersion";
} else {
echo "အသစ်ပြောင်းခြင်းမအောင်မြင်ပါ";
}
?>
ဤနည်းအားဖြင့်အသုံးပြုသူများသည် gitbox.net/cubrent သို့လည်ပတ်သောအခါနောက်ဆုံးပေါ်ဖြန့်ကျက်မှုဗားရှင်းကိုအမြဲတမ်းရရှိကြသည်။
Symlink () ကို အသုံးပြုသည့်အခါအောက်ပါပြ problems နာများသည်များသောအားဖြင့်ဖြစ်သည်။
ပစ်မှတ်လမ်းကြောင်းမရှိပါ - $ target ကို တည်ရှိပါ။
Link သည်ရှိပြီးသား ဖိုင်များ (သို့မဟုတ်) သို့မဟုတ် is_link () is_link () ကို သုံးပါ။
ခွင့်ပြုချက်မရပဲလင့်များကိုဖန်တီးပါ ။ အထူးသဖြင့် Linux တွင်အသုံးပြုသူများသည် PHP ကိုဖွင့်ရန်လိုအပ်သည့်အသုံးပြုသူများသည် PHP ကိုဖွင့်ရန်လိုအပ်နိုင်သည်။
ဥပမာ -
<?php
$target = '/var/www/html/storage/data.json';
$link = '/var/www/html/public/data.json';
if (file_exists($link) || is_link($link)) {
echo "ဒီ link ကိုရှိပြီးသား,ဖန်တီး. မရပါ";
} else {
if (symlink($target, $link)) {
echo "Link ဖန်တီးမှုကိုအောင်မြင်စွာ";
} else {
echo "链接ဖန်တီးမှုပျက်ကွက်,ကျေးဇူးပြု. ခွင့်ပြုချက်စစ်ဆေးပါ";
}
}
?>
PHP scripts သည်အချို့သောကန့်သတ်ချက်များကိုကျော်လွှားရန်လင့်များကိုဖန်တီးရန် LNS ကို SHPL_EXEC () နှင့်ပေါင်းစပ်နိုင်သည်။
သင်္ကေတ link ပျက်ကွက်မှုကိုရှောင်ရှားရန်ပကတိလမ်းကြောင်းများကိုသုံးပါ။
သင်္ကေတ link ယုတ္တိဗေဒကိုအလိုအလျောက်တိုးတက်စေရန်ဖြန့်ကျက်သော script တွင်ထည့်နိုင်သည်။
PHP ၏ Symlink () function သည်သင့်အား File Systems ကိုအသုံးပြုရန်ပြောင်းလွယ်ပြင်လွယ်ရှိသည့် file systems များကိုအထူးသဖြင့်ဖြန့်ကျက်ခြင်း, အရင်းအမြစ်ပြန်ဖွင့်ခြင်း, ၎င်းသည်ကြီးမားသောစီမံကိန်းလမ်းညွှန်များကိုစီမံခြင်းရှိမရှိ, ဤဆောင်းပါးတွင်လက်တွေ့ကျမူနာများကသူတို့ကိုအမှန်တကယ်စီမံကိန်းများတွင်အလျင်အမြန်ကျင့်သုံးနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။
အခုစမ်းကြည့်ရအောင်။