is_readable () ဖိုင်မရှိပါသို့မဟုတ်ခွင့်ပြုချက်မလုံလောက်ပါ။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-string">'/path/to/nonexistent.txt'</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">var_dump</span></span><span>(</span><span><span class="hljs-title function_ invoke__">is_readable</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>)); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း false</span></span><span>
</span></span>
ဤကိစ္စတွင်သင်သည် မှားယွင်းသော ရလဒ်များကို အခြေခံ. ၎င်းကိုလုပ်ဆောင်ပါက၎င်းသည်ခွင့်ပြုချက်ပြ issue နာတစ်ခုဖြစ်ပြီးအမှန်တကယ်ဖိုင်သည်လုံးဝမတည်ရှိပါ။
ဖြေရှင်းချက် - file_exists () ဖိုင်သည်ဖိုင်တည်ရှိခြင်းရှိ, မရှိကိုဆုံးဖြတ်ရန်နှင့်စာဖတ်နိုင်မှုကိုစစ်ဆေးရန်ပထမ ဦး စွာအသုံးပြုပါ။
<span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">file_exists</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>) && </span><span><span class="hljs-title function_ invoke__">is_readable</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဖိုင်တည်ရှိပြီးဖတ်နိုင်သည်"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဖိုင်သည်မတည်ရှိပါသို့မဟုတ်မဖတ်နိုင်ပါ"</span></span><span>;
}
</span></span>
is_readable () PHP ၏လက်ရှိအလုပ်လုပ်သော directory နှင့်ဆက်စပ်သောလမ်းကြောင်းကိုအသုံးပြုသည်။ အကယ်. လမ်းကြောင်းမရှင်းလင်းပါကချက်လက်မှတ်ရလဒ်သည်အမှားအယွင်းများဖြစ်နိုင်သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-string">'data/file.txt'</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">var_dump</span></span><span>(</span><span><span class="hljs-title function_ invoke__">is_readable</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>));
</span></span>
သင်၏ PHP scripts နှင့်မျှော်လင့်ထားသည့်လမ်းညွှန်များသည်ကွဲပြားခြားနားပါက မှားယွင်းစွာ ပြန်ပို့နိုင်သည်။ ဤသည်မှာအစပြုသူများစွာသည်လျစ်လျူရှုခံရသည့်ပြ a နာတစ်ခုဖြစ်သည်။
WomeRoundound : ပကတိလမ်းကြောင်းကိုသုံးပါသို့မဟုတ်လက်ရှိ script လမ်းညွှန်ကို __dir__ မှတဆင့်ရယူပါ။
<span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-keyword">__DIR__</span></span><span> . </span><span><span class="hljs-string">'/data/file.txt'</span></span><span>;
</span></span>
is_readable ()) သင်္ကေတ link ပစ်မှတ်ဖိုင်၏ဖတ်နိုင်မှုကိုစစ်ဆေးသည်။ ဆိုလိုသည်မှာသင်္ကေတ link ခွင့်ပြုချက်ကိုခွင့်ပြုလျှင်ပင်ပစ်မှတ်ထားဖိုင်မလုံလောက်ပါကရလဒ်သည်မဖတ်ရသေးသောရလဒ်ကိုဆိုလိုသည်။
<span><span><span class="hljs-comment">// ယူဆချက် link.txt ဆိုလိုတာက secret.txt သင်္ကေတ links များ</span></span><span>
</span><span><span class="hljs-title function_ invoke__">var_dump</span></span><span>(</span><span><span class="hljs-title function_ invoke__">is_readable</span></span><span>(</span><span><span class="hljs-string">'link.txt'</span></span><span>)); </span><span><span class="hljs-comment">// ပေါ်တွင်မူတည်ပါသည် secret.txt ခွင့်ပြုချက်</span></span><span>
</span></span>
မှတ်စု : သင်္ကေတအချင်းချင်းချိတ်ဆက်မှုများကိုင်တွယ်သည့်အခါမမျှော်လင့်သောလက်လှမ်းမီမှုမအောင်မြင်မှုများကိုရှောင်ရှားရန်ပစ်မှတ်ထားဖိုင်ခွင့်ပြုချက်များကိုရှင်းလင်းရန်အကောင်းဆုံးဖြစ်သည်။
Windows Systems တွင် is_readable () သည် UNIX / Linux Systems များအပေါ် အခြေခံ. ဖိုင် attribute များအပေါ် အခြေခံ. အဓိကအားဖြင့်စစ်ဆေးပြီးသည်။ အချို့ဖြစ်ရပ်များတွင်တူညီသောကုဒ်သည်မတူညီသောပလက်ဖောင်းများအပေါ်ကွဲပြားသောရလဒ်များကိုပြန်ပို့နိုင်သည်။
is_readable () ဖိုင်စနစ်ခွင့်ပြုချက်ကိုသာစစ်ဆေးပြီးဖိုင်ကိုအခြားလုပ်ငန်းစဉ်များကသော့ခတ်ထားခြင်းရှိမရှိမစဉ်းစားပါ။ အကယ်. ဖိုင်ကိုသိမ်းပိုက်ပါက (အခြားပရိုဂရမ်တစ်ခုမှသီးသန့်ရေးသားထားသောဥပမာ,) is_readable () သည် စစ်မှန်သော ပြန်လာဆဲဖြစ်သော်လည်းအမှန်တကယ်ဖတ်ရှုခြင်းလုပ်ငန်းသည်ပျက်ကွက်နိုင်သည်။
အဆင့်မြင့်လုံခြုံရေးယန္တရားများကို အသုံးပြု. စနစ်များတွင်ဖိုင်ခွင့်ပြုချက်များကို ACL (သို့ ) Selinux တို့ကခွင့်ပြုထားသည် ။ ဖိုင်ကိုဖတ်ရန်ကြိုးစားနေဆဲဖြစ်သည်။