လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ဖိုင်အဟောင်းများကိုပုံမှန်သန့်ရှင်းရေးလုပ်ရန် FTP server ကိုအကောင်အထည်ဖော်ရန် PHP ကို ​​အသုံးပြု. PHP ကို ​​အသုံးပြု. အပြည့်အစုံသင်ခန်းစာ

ဖိုင်အဟောင်းများကိုပုံမှန်သန့်ရှင်းရေးလုပ်ရန် FTP server ကိုအကောင်အထည်ဖော်ရန် PHP ကို ​​အသုံးပြု. PHP ကို ​​အသုံးပြု. အပြည့်အစုံသင်ခန်းစာ

M66 2025-11-03

ဖိုင်အဟောင်းများကိုပုံမှန်သန့်ရှင်းရေးလုပ်ရန် FTP server ကိုအကောင်အထည်ဖော်ရန် PHP ကို ​​အသုံးပြု. PHP ကို ​​အသုံးပြု. အပြည့်အစုံသင်ခန်းစာ

0 က်ဘ်ဆိုက်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်ပြုပြင်ထိန်းသိမ်းမှုလုပ်ငန်းစဉ်တွင် FTP ဆာဗာများကို File Upload, download နှင့် backup စီမံခန့်ခွဲမှုအတွက်အသုံးပြုသည်။ သို့သော်အချိန်ကြာလာသည်နှင့်အမျှဆာဗာတွင်အသုံးမကျသောဖိုင်များသည်ဆာဗာတွင်စုဆောင်းခြင်း, တန်ဖိုးရှိသောသိုလှောင်မှုနေရာယူသည်။ သင်၏ system ကိုသပ်သပ်ရပ်ရပ်နှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်နှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်အတွက်ဖိုင်အဟောင်းများကိုပုံမှန်သန့်ရှင်းရေးလုပ်ရန်လိုအပ်သည်။ ဤဆောင်းပါးသည် FTP server တွင်အလိုအလျောက်သန့်ရှင်းရေးလုပ်ငန်းများကိုအကောင်အထည်ဖော်ရန် PHP scripts ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

FTP ဆာဗာများ၏အခြေခံသဘောတရားများကိုနားလည်ပါ

FTP (ဖိုင်လွှဲပြောင်းမှုကျူးလွန်သူ) သည်အင်တာနက်ပေါ်ရှိအသုံးအများဆုံးဖိုင်လွှဲပြောင်းမှု protocol များထဲမှတစ်ခုဖြစ်သည်။ FTP client သို့မဟုတ် script program မှတဆင့်ကျွန်ုပ်တို့သည်ဝေးလံခေါင်သီသောဆာဗာမှဖိုင်များကိုတင်ခြင်း, ကူးယူခြင်းနှင့်ဖျက်ခြင်းကဲ့သို့သောလုပ်ငန်းများကိုလုပ်ဆောင်နိုင်ပါသည်။ ဖိုင်အဟောင်းများကိုအလိုအလျောက်ဖျက်ခြင်း၏လုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန် FTP server သို့ချိတ်ဆက်ရန်နှင့်ဖိုင်အချက်အလက်များကိုရယူရန် PHP ကိုပထမ ဦး စွာအသုံးပြုရန်လိုအပ်ပြီးဖိုင်အချက်အလက်ကိုရယူရန်အတွက် PHP ကိုအသုံးပြုရန်လိုအပ်သည်။

PHP ကို ​​အသုံးပြု. FTP server သို့ဆက်သွယ်ပါ

PHP သည် ftp server နှင့်အလွယ်တကူ ဆက်သွယ်. ဆက်သွယ်နိုင်သည့် built-in ftp function library ကိုထောက်ပံ့ပေးသည်။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -

 $ftpServer = 'ftp.example.com';
$ftpUsername = 'username';
$ftpPassword = 'password';

$connId = ftp_connect($ftpServer);
$loginResult = ftp_login($connId, $ftpUsername, $ftpPassword);

if ($connId && $loginResult) {
    // ဆက်သွယ်မှုအောင်မြင်သော
} else {
    // ဆက်သွယ်မှုမအောင်မြင်ပါ,အမှားများကိုကိုင်တွယ်
}

အထက်ပါကုဒ်တွင် FTP_Connect () သည် connection ကိုတည်ဆောက်ရန်နှင့် FTP_Login () ကို login authentication အတွက်အသုံးပြုသည်။ ဆာဗာလိပ်စာ, Username နှင့် Password သည်သင့်အားနောက်ခြေလှမ်းကိုချောချောမွေ့မွေ့မသွားမီမှန်ကန်စွာဖြည့်စွက်ကြောင်းသေချာပါစေ။

FTP လမ်းညွှန်တွင်ဖိုင်စာရင်းကိုရယူပါ

ဆက်သွယ်မှုအောင်မြင်ပြီးနောက် FTP server ရှိ directory တစ်ခုတွင်ဖိုင်စာရင်းကိုရယူရန်လိုအပ်သည်။ သင် FTP_NList () function ကိုသုံးနိုင်သည်။

 $ftpDirectory = '/path/to/directory/';
$fileList = ftp_nlist($connId, $ftpDirectory);

foreach ($fileList as $file) {
    echo $file . '<br>';
}

အထက်ဖော်ပြပါကုဒ်သည်သတ်မှတ်ထားသောလမ်းညွှန်တွင်အမည်များအားလုံး၏အမည်များကိုထုတ်ပေးလိမ့်မည်, နောက်ဆက်တွဲ filtering နှင့်ဖျက်ခြင်းလုပ်ငန်းများအတွက်အခြေခံကျသည်။

FTP server မှဖိုင်အဟောင်းများကိုဖျက်ပါ

ထို့နောက်ဖိုင်၏ပြုပြင်မွမ်းမံချိန်ကို အခြေခံ. ဖိုင်အဟောင်းရှိမရှိဆုံးဖြတ်နိုင်သည်။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 $ftpDirectory = '/path/to/directory/';
$daysAgo = 30; // ဖျက်30ဖိုင်များလွန်ခဲ့သောရက်

$fileList = ftp_nlist($connId, $ftpDirectory);

foreach ($fileList as $file) {
    $fileTimestamp = ftp_mdtm($connId, $file);
    $fileTimestamp = date_create_from_format('YmdHis', $fileTimestamp);
    $currentTimestamp = date_create();

    $diff = date_diff($currentTimestamp, $fileTimestamp);
    $elapsedDays = $diff->format('%a');

    if ($elapsedDays > $daysAgo) {
        ftp_delete($connId, $file);
        echo '已ဖျက်文件:' . $file . '<br>';
    }
}

ဤ script သည်သတ်မှတ်ထားသော directory ထဲတွင်ဖိုင်များကိုဖြတ်သန်းသွားမည်, ဖိုင်တစ်ခုစီ၏ပြုပြင်မွမ်းမံမည့်နေ့ကိုဆုံးဖြတ်ပြီးရက်အရေအတွက်ထက်အသက်ကြီးသောဖိုင်အဟောင်းများကိုအလိုအလျောက်ဖျက်ပါ။

အလိုအလျောက်ကွပ်မျက်ရန်အတွက် Linux စီစဉ်ထားသည့်အလုပ်များကိုသတ်မှတ်ပါ

script ကိုမှန်မှန်လည်ပတ်ရန်အတွက်သင်သည် cron scheduled task ကို Linux စနစ်တွင်အသုံးပြုနိုင်သည်။ Crontab ကိုတည်းဖြတ်ရန် Terminal တွင်အောက်ပါ command ကို execute လုပ်ပါ။

 crontab -e

ထို့နောက်အောက်ပါစည်းမျဉ်းများကိုထည့်ပါ။

 0 0 * * * php /path/to/script.php

အထက်ပါ command သည်ဖိုင်အဟောင်းများကိုအလိုအလျောက်သန့်ရှင်းရေးလုပ်ခြင်း၏လုပ်ဆောင်မှုကိုအလိုအလျောက်သန့်ရှင်းရေးလုပ်ခြင်း၏လုပ်ဆောင်မှုကိုသိရှိရန်စနစ်သည် PPP script ကိုတစ်ကြိမ်သာဖြင့်ပြုလုပ်လိမ့်မည်ဟုဆိုလိုသည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးကိုမိတ်ဆက်ပေးခြင်းဖြင့် PPP scripts ကို FTP ဆာဗာဟောင်းရှိဖိုင်ဟောင်းများကိုပုံမှန်ဖျက်ရန်အပြည့်အဝလုပ်ငန်းစဉ်ကိုအကောင်အထည်ဖော်ရန်မည်သို့အသုံးပြုရမည်ကိုလေ့လာသင်ယူခဲ့သည်။ FTP server သို့ချိတ်ဆက်ရန်ဖိုင်စာရင်းကို ဖြတ်. ဖိုင်စာရင်းကို ဖြတ်. Cron Task ကိုသတ်မှတ်ရန်ဖိုင်အချိန်ကိုဆုံးဖြတ်ခြင်းသည်အဆင့်တိုင်းသည်အလွန်အရေးကြီးသည်။ ဤနည်းလမ်းသည်ဆာဗာနေရာကိုထိထိရောက်ရောက်အခမဲ့အခမဲ့လွတ်လွတ်လပ်လပ်လွှတ်ပေးနိုင်သည်။ ၎င်းသည်ဖိုင်များအမြောက်အများကိုနေ့စဉ်စီမံခန့်ခွဲသောဝက်ဘ်ဆိုက်များသို့မဟုတ်အသုံးချမှုများအတွက်လက်တွေ့ကျပြီးထိရောက်သောဖြေရှင်းနည်းတစ်ခုဖြစ်သည်။

မကြာသေးမီ ဆောင်းပါးများ