လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> compressed packages များရှိဖိုင်များ၏စာသားချုံ့သည့်လုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန် PHP Ziparchive ကိုမည်သို့အသုံးပြုရမည်နည်း။

compressed packages များရှိဖိုင်များ၏စာသားချုံ့သည့်လုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန် PHP Ziparchive ကိုမည်သို့အသုံးပြုရမည်နည်း။

M66 2025-06-19

1 ။ နိဒါန်း

2 ။ compressed packages များရှိစာသားဖိုင်များကိုချုံ့ရန်ဇတ်ပေါင်ဖားကိုအသုံးပြုရန်ခြေလှမ်းများ

အဆင့် 1: Ziparchive Object ကိုဖန်တီးပြီးလည်ပတ်ရန် compressed package ကိုဖွင့်ပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည် Ziparchive object တစ်ခုကိုဖန်တီးရန်နှင့်၎င်း၏ပွင့်လင်းသောနည်းလမ်းဖြင့်လည်ပတ်ရန် compressed package ကိုဖွင့်ရန်လိုအပ်သည်။ ဥပမာအားဖြင့်:

 $zip = new ZipArchive();
$zip->open('path/to/your/archive.zip');

အဆင့် 2 - compressed package ထဲရှိဖိုင်များနှင့်စာသားတစ်ခုချင်းစီကိုရိုက်ထည့်ပါ

Ziparchive Object ၏ GetFrophindindex နည်းလမ်းကိုခေါ်ဆိုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဖိုင်ဒေတာများကိုသတ်မှတ်ထားသောအညွှန်းကိန်းတွင်ရနိုင်သည်။ ထို့နောက်ကျွန်ုပ်တို့သည်ရရှိသောဖိုင်အချက်အလက်များကိုရိုက်နှိပ်နိုင်သည်။ အောက်ဖော်ပြပါကုဒ်သည် compressed package ထဲတွင်ဖိုင်များအားလုံးကို နှိပ်. compressed data အသစ်များသို့ချုံ့ထားသောအချက်အလက်များကိုသိမ်းဆည်းရန်မည်သို့တင်ပြရမည်ကိုပြသသည်။

 $newZip = new ZipArchive();
$newZip->open('path/to/your/new/archive.zip', ZipArchive::CREATE);

for ($i = 0; $i < $zip->numFiles; $i++) {
    $filename = $zip->getNameIndex($i);
    $fileData = $zip->getFromIndex($i);

    // စာသား compression စစ်ဆင်ရေးလုပ်ဆောင်ပါ,သင်နှင့်ရင်းနှီးကျွမ်းဝင်သောမည်သည့်စာသား compression algorithm ကိုမဆိုအသုံးပြုနိုင်သည်
    $newZip->addFromString($filename, $fileData);
}

$newZip->close();
$zip->close();

အဆင့် 3: Ziparchive Object ကိုပိတ်ပါ

နောက်ဆုံးအနေဖြင့် Open Ziparchive Object ကိုပိတ်ရန်မမေ့ပါနှင့်။

 $newZip->close();
$zip->close();

3 ။ ဥပမာ - စာသားချုံ့အတွက် PHP Ziparchive ကိုသုံးပါ

PHP Ziparchive ကိုအသုံးပြုပြီးစာသားချုံ့ခြင်း၏ရိုးရှင်းသောဥပမာဖြစ်သည်။ ဤဥပမာသည် compressed package ထဲတွင်ဖိုင်များအားလုံး၏ compressed data များအားလုံးအတွက် compressed data များအားလုံးအတွက် base64 ကိုအသုံးပြုသည်။

 $zip = new ZipArchive();
$zip->open('path/to/your/archive.zip');

$newZip = new ZipArchive();
$newZip->open('path/to/your/new/archive.zip', ZipArchive::CREATE);

for ($i = 0; $i < $zip->numFiles; $i++) {
    $filename = $zip->getNameIndex($i);
    $fileData = $zip->getFromIndex($i);

    // အသုံးပြုBase64encoding နှင့်ချုံ့ဖျော်ဖြေ
    $compressedData = base64_encode($fileData);

    $newZip->addFromString($filename, $compressedData);
}

$newZip->close();
$zip->close();

အထက်ပါဥပမာတွင်ကျွန်ုပ်တို့သည် base64 encoding ကိုဖိုင်အမျိုးအစားချုံ့ရန်အသုံးပြုသည်။

4 ။ နိဂုံးချုပ်

ဤဆောင်းပါးက PHP Ziparchive Extension Library စာကြည့်တိုက်ကို compressed packages များရှိဖိုင်များအတွက်စာသားချုံ့သည့်လုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန်မည်သို့အသုံးပြုရမည်ကိုဖော်ပြသည်။ ဖိုင်များကို compressed package ထဲတွင်ဖြတ်ပြီးဖိုင်များ contents များကို compressing လုပ်ခြင်းဖြင့် compressed package တွင်ဖိုင်များပေါ်တွင်စာသားချုံ့ခြင်းလုပ်ငန်းများကိုအကောင်အထည်ဖော်နိုင်သည်။ ဥပမာတွင်အသုံးပြုသော base64 encoding အပြင်ကွဲပြားခြားနားသောလိုအပ်ချက်များကိုဖြည့်ဆည်းရန်အခြားစာသား compression algorithms များကိုလည်းရွေးချယ်နိုင်သည်။ ဒီဆောင်းပါးကသင့်ကိုကူညီလိမ့်မယ်လို့မျှော်လင့်ပါတယ်။