PHP တွင် 0 င်ငွေ သည်ဖိုင်သို့မဟုတ်လမ်းညွှန်ပိုင်ရှင်ကိုပြုပြင်ရန်အသုံးပြုသည်။ ၎င်းသည် Linux / Unix စနစ်များတွင်အလွန်လက်တွေ့ကျသော်လည်း PHP ကို Windows ပတ်ဝန်းကျင်တွင်အသုံးပြုသောအခါဤလုပ်ဆောင်မှု၏အပြုအမူသည်မျှော်လင့်ထားသည့်အတိုင်းမရှင်းလင်းပါ။ ဤဆောင်းပါးသည် 0 င်းဒိုး function ၏ထိရောက်မှုနှင့်၎င်း၏အပြုအမူဆိုင်ရာအသေးစိတ်အချက်အလက်များအားရှုထောင့်မှကြည့်ရှုခြင်းမှကြည့်ရှုရန်၎င်း၏အပြုအမူဆိုင်ရာအသေးစိတ်အချက်အလက်များကိုလေ့လာလိမ့်မည်။
Chown (string $ filename, string ကို string ကို, string ကို | IN $ user): Bool
ဤလုပ်ဆောင်ချက်သည်သတ်မှတ်ထားသောဖိုင်ပိုင်ရှင်အားသတ်မှတ်ထားသောအသုံးပြုသူထံသို့ပြောင်းလဲရန်ကြိုးစားသည်။ အောင်မြင်လျှင် အောင်မြင် ပါက အယူမှား မအောင်မြင်ပါကပြန်ပို့ပါ။ ၎င်းသည် operating system ၏အခြေခံခွင့်ပြုချက်စီမံခန့်ခွဲမှုယန္တရားအပေါ်မူတည်သည်။
Windows Systems ၏ခွင့်ပြုချက်များသည် Linux / Unix စနစ်များ၏ကွဲပြားခြားနားသည်။ ဖိုင်ခွင့်ပြုချက်ကိုစီမံရန် Windows သည် ACL (Access Control List) ကိုအသုံးပြုသည်။ ပိုင်ရှင်၏အယူအဆတည်ရှိပေမယ့် Linux chown concept နှင့်လုံးဝမတူပါ။ ပို. အရေးကြီးသည်မှာ Windows 'NTFS ခွင့်ပြုချက်စီမံခန့်ခွဲမှုသည် PHPP ၏ကွပ်မျက်မှုဆိုင်ရာစနစ်များ,
0 င်းဒိုးပတ် 0 န်းကျင်တွင် 0 င်ငွေ ကိုအသုံးပြုသောအခါအောက်ဖော်ပြပါအခြေအနေများကိုယေဘုယျအားဖြင့်တွေ့လိမ့်မည်။
function calls အမြဲတမ်းပျက်ကွက် 0 င်ရန် ညွှန်ကြားချက်များတိုက်ရိုက်ခေါ်ဆိုမှုများသည်မှားယွင်းစွာပြန် လှည့်စား လေ့ရှိပြီးသတိပေးချက်ဖြင့်လိုက်ပါသွားသည်။
မမှန်ကန်သောခေါ်ဆိုမှု, အမှားမရှိပါ။ ပိုင်ရှင်နှင့်မပြောင်းလဲပါ တစ်ခါတစ်ရံ function ခေါ်ဆိုမှုသည်အမှားတစ်ခုမပြောတတ်သော်လည်းဖိုင်ပိုင်ရှင်မပြောင်းလဲပါ။
သတ်သတ်မှတ်မှတ်ပတ်ဝန်းကျင်မှာကန့်သတ်ထောက်ခံမှု <br> ဥပမာအားဖြင့် (ဥပမာ Cygwin, WSL စသကဲ့သို့) posix Simulation အလွှာများနှင့်အချို့သောပတ်ဝန်းကျင်ကို အသုံးပြု. 0 င်ပစ်ကို တစ်စိတ်တစ်ပိုင်းထောက်ပံ့နိုင်သည်။
အောက်ပါ PHP Code Support သည် Chown ခေါ်ဆိုမှု၏ရလဒ်ကိုမည်သို့ရှာဖွေရမည်ကိုပြသသည်။
<?php
$filename = 'testfile.txt';
// စမ်းသပ်ဖိုင်တစ်ခုဖန်တီးပါ
file_put_contents($filename, 'အကြောင်းအရာစစ်ဆေးပါ');
// ပိုင်ရှင်ကိုပြုပြင်ရန်ကြိုးစားပါ
$result = chown($filename, 'username');
if ($result) {
echo "ပိုင်ရှင်၏ပြုပြင်မွမ်းမံအောင်မြင်ခဲ့သည်。";
} else {
echo "ပိုင်ရှင်ပြုပြင်မွမ်းမံရန်ပျက်ကွက်ခဲ့သည်。";
// နောက်ဆုံးအမှားမက်ဆေ့ခ်ျကို output
var_dump(error_get_last());
}
?>
Windows တွင်ဤကုဒ်သည် "ပိုင်ရှင်ပြုပြင်မွမ်းမံမှုမအောင်မြင်ပါ" နှင့်သက်ဆိုင်သောအမှားသတင်းအချက်အလက်များကို output လုပ်ရန်ဖြစ်သည်။
com အစိတ်အပိုင်းများကို ACL ခွင့်ပြုချက်ရယူရန်သုံးပါ
Windows တွင် com အရာဝတ်ထုများကို Win32security interface မှတဆင့် file acl ကိုပြုပြင်ရန်အသုံးပြုနိုင်သည်။ သို့သော်၎င်းသည်ပိုမိုရှုပ်ထွေးသောကုဒ်များလိုအပ်သည်။
System command များကို command line tools များဖြင့်ခေါ်ဆိုခြင်း ခွင့်ပြုချက်ကိုစီမံခန့်ခွဲရန် ICCLS command ကို Call to Exec ကို သုံးပါ။ ဥပမာအားဖြင့်:
<?php
$file = 'testfile.txt';
$user = 'username';
exec("icacls {$file} /setowner {$user}", $output, $return_var);
if ($return_var === 0) {
echo "ပိုင်ရှင်၏ပြုပြင်မွမ်းမံအောင်မြင်ခဲ့သည်";
} else {
echo "ပိုင်ရှင်ပြုပြင်မွမ်းမံရန်ပျက်ကွက်ခဲ့သည်";
print_r($output);
}
?>
ဤနေရာတွင် PHP ကို execute လုပ်သူများသည်အောင်မြင်ရန်သက်ဆိုင်ရာခွင့်ပြုချက်များရှိသည်ဟုဤနေရာတွင်မှတ်သားသင့်သည်။
WSL သို့မဟုတ်အခြား posix နှင့်လိုက်ဖက်သောပတ်ဝန်းကျင်ကို သုံး. စဉ်းစားပါ Windows 10 နှင့်အထက်တွင် WSLUX အတွက် Windows Subsystem ကိုဖွင့်ပြီးနောက်တွင် Linux ပတ် 0 န်းကျင်မှတစ်ဆင့် 0 င် ငွေကို သုံးနိုင်သည်။
Windows System ၏ဇာတိပတ်ဝန်းကျင်တွင် PHP ၏ 0 င ် ငွေ သည်အခြေခံအားဖြင့်မမှန်ကန် ပါ။
Windows ၏ခွင့်ပြုချက်မော်ဒယ်သည် UNIX နှင့်အတော်အတန်ကွဲပြားခြားနားပြီးကိုယ်ပိုင်ပိုင်ဆိုင်မှုစီမံခန့်ခွဲမှုသည် ACL နှင့် System Tools များအပေါ်မူတည်သည်။
Windows File Permissions ကိုစီမံခန့်ခွဲရန်လိုအပ်ပါက ICCLS (သို့) com interfaces များကဲ့သို့သော system command များကိုအသုံးပြုရန်စဉ်းစားသင့်သည်။
Cross-Platform စီမံကိန်းများတွင် ChoN တွင်ဖိုင်ပိုင်ရှင်ကိုပြုပြင်ရန်သို့မဟုတ်ပတ် 0 န်းကျင်ဆိုင်ရာဆုံးဖြတ်ချက်များကိုထည့်သွင်းရန် 0 င်ငွေ ကိုမှီခိုခြင်းကိုရှောင်သင့်သည်။
0 င်းဒိုးလက်အောက်ရှိ 0 င်းဒိုး ပျက်ကွက်ခြင်းကြောင့်ခွင့်ပြုချက်စီမံခန့်ခွဲမှုပြ problems နာများကိုရှောင်ရှားနိုင်ရန်ပတ်ဝန်းကျင်အပေါ် အခြေခံ. သက်ဆိုင်ရာဖြေရှင်းနည်းများကိုသင်ကျင့်သုံးနိုင်သည်။
နမူနာအရင်းအမြစ်ကုဒ်နံပါတ်နှင့် command ဖော်ပြချက်ကိုကြည့်ပါ။
https://gitbox.net/php/chp/chown-windows-