ကွဲပြားခြားနားသောဆာဗာများ၏ပြန်လာပုံစံနှင့်အညီကွဲပြားခြားနားသောခွဲခြမ်းစိတ်ဖြာယုတ္တိဗေဒရေးပါ။
PHP built-in function fut function fut function ftp_rawlist ကိုအသုံးပြုပြီး သည့်နောက်တွင်သင်သည်တင်းကျပ်သောကိုက်ညီမှုကိုရှောင်ရှားရန်ပုံမှန်အသုံးအနှုန်းများဖြင့်ပေါင်းစပ်နိုင်အောင်ပြောင်းလွယ်ပြင်လွယ်ရှိနိုင်သည်။
အကယ်. အခြေအနေများခွင့်ပြုပါက FTP server (SFTP သို့မဟုတ် FTP Extension commands) မှပံ့ပိုးထားသောအခြား command များသို့မဟုတ် protocol များကိုသုံးပါ ။
အမည်မသိနှင့်သာမန်သုံးစွဲသူခွင့်ပြုချက်ပြန်ခြင်းတသမတ်တည်းရှိ မတူသောအခြားအသုံးပြုသူခွင့်ပြုချက်များအောက်တွင်ပြန်လည်နေရာချထားခြင်းရလဒ်များကိုစစ်ဆေးပါ ။
များသောအားဖြင့် phpseclib ကဲ့သို့သော တတိယပါတီ FTP စာကြည့်တိုက်များကိုအသုံးပြုရန်စဉ်းစားပါ ။
<?php
$ftp_server = "gitbox.net";
$ftp_user = "username";
$ftp_pass = "password";
// ဆက်FTP
$conn_id = ftp_connect($ftp_server);
if (!$conn_id) {
die("无法ဆက် FTP ဆာဆာ");
}
// လော့ဂ်အင်
if (!ftp_login($conn_id, $ftp_user, $ftp_pass)) {
die("FTP လော့ဂ်အင်失败");
}
// လမ်းညွှန်စာရင်းရယူပါ
$rawlist = ftp_rawlist($conn_id, "/path/to/directory");
if ($rawlist === false) {
die("လမ်းညွှန်စာရင်းရယူပါ失败");
}
// ခွင့်ပြုချက်သတင်းအချက်အလက်ခွဲခြမ်းစိတ်ဖြာ
foreach ($rawlist as $line) {
// Unix စတိုင်ခွင့်ပြုချက် string သည်များသောအားဖြင့်ပထမလယ်ကွင်းဖြစ်သည်
// ဥပမာအားဖြင့်:-rw-r--r-- 1 user group 1234 May 20 12:00 example.txt
$parts = preg_split('/\s+/', $line, 9);
if (count($parts) === 9) {
$permissions = $parts[0];
$filename = $parts[8];
echo "စာချုပ်စာတမ်း: $filename ,ခွင့်ပြုချက်: $permissions\n";
}
}
ftp_close($conn_id);
?>