လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Ziparchive Tutulial - compressed packages များရှိဖိုင်များ၏ timestamp ကိုပြုပြင်နည်း

PHP Ziparchive Tutulial - compressed packages များရှိဖိုင်များ၏ timestamp ကိုပြုပြင်နည်း

gitbox 2025-07-26

နိဒါန်း

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင် package များချုံ့ရန် Ziparchive class ကိုအသုံးပြုရန်အလွန်များသောအားဖြင့်ဖြစ်သည်။ တခါတရံတွင်ကျွန်ုပ်တို့သည်အချို့သောစီးပွားရေးလုပ်ငန်းများလိုအပ်ချက်များနှင့်ကိုက်ညီရန်ချုံ့ထားသောအထုပ်ရှိဖိုင်များ၏ timestamp ကိုပြုပြင်ရန်လိုအပ်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်မှုကို Ziparchive မှတဆင့်မည်သို့အကောင်အထည်ဖော်ရမည်ကိုအသေးစိတ်ရှင်းပြပါမည်။

Ziparchive မှနိဒါန်း

Ziparchive ဆိုသည်မှာ Zip ဖိုင်များဖန်တီးရန်, ပွင့်လင်းစွာဖတ်ရန်နှင့်ပြုပြင်ရန်နှင့်ပြုပြင်ရန်အသုံးပြုသော PHP တွင် built-in အတန်းအစားဖြစ်သည်။ ၎င်းသည် compressed package အကြောင်းအရာစီမံခန့်ခွဲမှုကိုထောက်ပံ့ရန်ကြွယ်ဝသောနည်းလမ်းဖြစ်သည်။

compressed packages များရှိဖိုင်များ၏ timestamp ကိုပြုပြင်နည်း

ပထမ ဦး စွာပစ်မှတ် compression package ကိုဖွင့်ရန် Ziparchive class ကိုသုံးပါ။

 $zip = new ZipArchive();
$zipFile = 'path/to/your/zip/file.zip';
if ($zip->open($zipFile) === true) {
    // ဆက်လက်နေ
}

Timestamp ပါ 0 င်သောသတ်မှတ်ထားသောအညွှန်းဖိုင်အသေးစိတ်ကိုရရန် statindox နည်းလမ်းကိုခေါ်ဆိုပါ -

 $fileIndex = 0; // compressed packages များအတွက်ဖိုင်များ၏အညွှန်းကိန်း
$fileInfo = $zip->statIndex($fileIndex);
$lastModifiedTime = $fileInfo['mtime'];

Timestamp ကိုဥပမာအားဖြင့်ပြင်ဆင်ပါ,

 $lastModifiedTime = time();

timestamp ကိုသက်ဆိုင်ရာဖိုင်သို့လျှောက်ထားရန် setmodiationtime နည်းလမ်းကိုသုံးပါ။

 $zip->setModificationTime($fileIndex, $lastModifiedTime);

နောက်ဆုံးတွင်ပြုပြင်ခြင်းကိုသိမ်းဆည်းရန် ZIP အထုပ်ကိုပိတ်ပါ။

 $zip->close();

နမူနာကုဒ်

Compressed Package တွင်ပထမဆုံးဖိုင်၏ timestamp ကိုမည်သို့ပြုပြင်ရမည်ကိုပြသသည့်အပြည့်အဝနမူနာကုဒ်ဖြစ်သည်။

 $zip = new ZipArchive();
$zipFile = 'path/to/your/zip/file.zip';
if ($zip->open($zipFile) === true) {
    $fileIndex = 0;
    $fileInfo = $zip->statIndex($fileIndex);
    $lastModifiedTime = $fileInfo['mtime'];
    
    $lastModifiedTime = time();
    
    $zip->setModificationTime($fileIndex, $lastModifiedTime);
    $zip->close();
}

ဤကုဒ်သည် Timestamp ကို 0 င်ရောက်သည့်ဖိုင်သည် 0 ကိုလက်ရှိအချိန်အထိ 0 မ်းနည်းသည့်အချိန်အထိဖော်ပြထားသည်။

အကျဉ်းချုပ်

PHP ၏ Ziparchive Class နှင့်အတူကျွန်ုပ်တို့သည် compressed package တွင်ဖိုင်တစ်ခုတည်း၏ timestamp ကိုအလွယ်တကူပြုပြင်နိုင်သည်။ ဤဆောင်းပါးသည်အကောင်အထည်ဖော်မှုဖြစ်စဉ်ကိုအဆင့်ဆင့်ရှင်းလင်းချက်များနှင့်နမူနာကုဒ်များမှတစ်ဆင့်နားလည်မှုကိုနားလည်ရန်ကူညီသည်။