PHP တွင် စနတူးရေး function ကိုသတ်မှတ်ထားသော directory တွင်ဖိုင်များနှင့်လမ်းညွှန်များစာရင်းကိုရရှိရန်အသုံးပြုသည်။ သတ်မှတ်ထားသော directory တွင်ဖိုင်များနှင့် subdirectories များအားလုံး၏အမည်များနှင့်ပတ် 0 န်းကျင်များပါ 0 င်သည့်ခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။ စနဒူရီ ၏အခြေခံအသုံးပြုမှုသည်အလွန်ရိုးရှင်းသည်, သို့သော်၎င်းသည်ဖိုင်များကိုလမ်းညွှန်များမှခွဲခြားသတ်မှတ်သည့်မှတ်ပုံတင်ကိုတိုက်ရိုက်မပေးချေ။ သို့သော်ကျွန်ုပ်တို့သည်အခြားလုပ်ဆောင်မှုများကိုပေါင်းစပ်ခြင်းဖြင့် entry တစ်ခုစီ၏အမျိုးအစားကိုအလွယ်တကူခွဲခြားသတ်မှတ်နိုင်သည်။
စနတူးရေး function ၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-title function_ invoke__">scandir</span></span><span> ( </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$directory</span></span><span> [, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$sorting_order</span></span><span> = SCANDIR_SORT_ASCENDING [, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$context</span></span><span> = </span><span><span class="hljs-literal">NULL</span></span><span> ]] )
</span></span>$ directory : စကင်ဖတ်စစ်ဆေးရန်လမ်းညွှန်လမ်းကြောင်း။
$ sorting_order : တက်ကြွမှုအမိန့် ( scandir_sort_Cascending ) ကိုပျက်ကွက်ခြင်း,
$ Context : အခြေအနေတွင် stream ကိုသတ်မှတ်ခြင်း, optional ကိုဖော်ပြရန်။
စကင်တူးသည် directory တစ်ခု၏ contents ၏ contents ပါ 0 င်သော array များပါ 0 င်သည်။ ၎င်းသည်များသောအားဖြင့်ဖိုင်အမည်နှင့် subdirectory ၏အမည်ဖြစ်သည်။ ပြန်လာတန်ဖိုးမှာလက်ရှိလမ်းညွှန် ( ။ ) နှင့်မိဘလမ်းညွှန် ( .. ) နှင့်မိဘလမ်းညွှန်များပါဝင်သည်။
စကင်တူးမှ ပြန်လာသောဖိုင်များနှင့်လမ်းညွှန်များကိုခွဲခြားရန်ကျွန်ုပ်တို့သည် is_file () နှင့် is_dir () လုပ်ဆောင်ချက်များကိုသုံးနိုင်သည်။ သူတို့ကပေးထားသောလမ်းကြောင်းသည်ဖိုင်တစ်ခုသို့မဟုတ်လမ်းညွှန်တစ်ခုရှိမရှိဆုံးဖြတ်ရန်အသုံးပြုသည်။ စနဗွတ် ၏ရလဒ်များကိုဖြတ်သန်းခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် entry တစ်ခုစီ၏အမျိုးအစားကိုအလွယ်တကူခွဲခြားသတ်မှတ်နိုင်သည်။
is_file () နှင့် is_dir () မှဖိုင်များနှင့်လမ်းညွှန်များကိုတရားသူကြီးများနှင့်လမ်းညွှန်များကိုတရားသူကြီးများနှင့်လမ်းညွှန်များကိုတရားသူကြီး များ နှင့်လမ်းညွှန်များကိုတရားစီရင်ခြင်း () -
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$directory</span></span><span> = </span><span><span class="hljs-string">'/path/to/your/directory'</span></span><span>; </span><span><span class="hljs-comment">// directory ကိုစကင်ဖတ်စစ်ဆေးရန်သတ်မှတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$files</span></span><span> = </span><span><span class="hljs-title function_ invoke__">scandir</span></span><span>(</span><span><span class="hljs-variable">$directory</span></span><span>);
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$files</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$file</span></span><span>) {
</span><span><span class="hljs-comment">// ခုန်ကျော်သည် "." နှင့် ".."</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$file</span></span><span> == </span><span><span class="hljs-string">'.'</span></span><span> || </span><span><span class="hljs-variable">$file</span></span><span> == </span><span><span class="hljs-string">'..'</span></span><span>) {
</span><span><span class="hljs-keyword">continue</span></span><span>;
}
</span><span><span class="hljs-variable">$filePath</span></span><span> = </span><span><span class="hljs-variable">$directory</span></span><span> . DIRECTORY_SEPARATOR . </span><span><span class="hljs-variable">$file</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_dir</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$file</span></span><span> . </span><span><span class="hljs-string">" ဒါဟာလမ်းညွှန်တစ်ခုပါ\n"</span></span><span>;
} </span><span><span class="hljs-keyword">elseif</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_file</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$file</span></span><span> . </span><span><span class="hljs-string">" ဖိုင်တစ်ခုပါ\n"</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-variable">$file</span></span><span> . </span><span><span class="hljs-string">" အမည်မသိအမျိုးအစားဖြစ်ပါတယ်\n"</span></span><span>;
}
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ဖိုင်များနှင့်လမ်းညွှန်များကိုသတ်မှတ်ထားသောလမ်းညွှန်တွင်ဖိုင်များနှင့်လမ်းညွှန်အားလုံးကိုရယူရန် စနန္ဒာ ($ directory) ကို ကျွန်ုပ်တို့ပထမဆုံးခေါ်ဆိုသည်။
receente ကို Returned File List မှတစ်ဆင့်ကွင်းဆက်သို့သုံးပါ။
တစ်ခုချင်းစီကို entry ကိုသီးသန့် ။ နှင့် .. ပထမ ဦး စွာပထမ ဦး စွာ, သူတို့ကလက်ရှိလမ်းညွှန်နှင့်မိဘလမ်းညွှန်အသီးသီးကိုကိုယ်စားပြုသောကြောင့်များသောအားဖြင့်နောက်ထပ်အပြောင်းအလဲနဲ့မလိုအပ်ပါဘူး။
ထို့နောက် entry သည် directory တစ်ခုရှိမရှိစစ်ဆေးရန် IS_DIR () ကို သုံးပါ။ အကယ်. ၎င်းသည်လမ်းညွှန်တစ်ခုဖြစ်ပါကသက်ဆိုင်ရာအချက်ပြ promption သည် output ကိုဖြစ်သည်။
နောက်တစ်ခုကဖိုင်တစ်ခုရှိမရှိဆုံးဖြတ်ရန် is_file () ကို သုံးပါ။ ၎င်းသည်ဖိုင်တစ်ခုဖြစ်ပါကသက်ဆိုင်ရာအချက်ပြ promptial သည် output ကိုဖြစ်သည်။
အထက်ပါအခြေအနေများမပြည့်မီပါကကျွန်ုပ်တို့သည် entry ကိုအထူးဖိုင်တစ်ခုအဖြစ်သတ်မှတ်ရန်စဉ်းစားနိုင်သည်။
ယူဆ / လမ်းကြောင်း / / သင်၏ / directory တွင် အောက်ပါတို့ပါ 0 င်သည်။
File1.txt (ဖိုင်)
File2.Php (ဖိုင်)
subdir1 (လမ်းညွှန်)
subdir2 (လမ်းညွှန်)
အထက်ပါကုဒ်ကိုဖွင့်ပြီးနောက်အောက်ပါအတိုင်း output သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span>file1.txt ဖိုင်တစ်ခုပါ
file2.php ဖိုင်တစ်ခုပါ
subdir1 ဒါဟာလမ်းညွှန်တစ်ခုပါ
subdir2 ဒါဟာလမ်းညွှန်တစ်ခုပါ
</span></span>scandir နှင့် is_file () နှင့် is_dir () functions များကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဖိုင်စနစ်ရှိ entry အမျိုးအစားများကိုအလွယ်တကူဆုံးဖြတ်ပြီးဖိုင်များနှင့်လမ်းညွှန်များကိုခွဲခြားနိုင်သည်။ စနဗွင် ကိုယ်တိုင်ကတိုက်ရိုက်မှတ်ပုံတင်သတင်းအချက်အလက်မပေးနိုင်သော်လည်းအခြားဖိုင်စနစ်လုပ်ဆောင်ချက်များနှင့်အသုံးပြုခြင်းသည်ဤလုပ်ငန်းကိုအလွန်ရိုးရှင်းစေသည်။