بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
أخيراً قد تمكنت من ملاقتكم ايه الاحباء فقد طال بعادي عنكم لأسباب يتبعها اسباب
ندخل في صلب الموضوع
في مكتبة اسمها php_zip
أكتر من رائعه بتسمح لك بالتعامل مع الملفات المضغوطه و تنفيذ عملياتك عليها
تقدر تستفيد بيها في اكتر من حاجه مثلاً تخلي الاسكربت بتاعك مضغوط + ملف php مهمته فك ضغط الملف ده و بكده هتوفر علي مستخدمين البرنامج عناء الدخول للسي بانل و فك الضغط
أو تخلي نظام اللفات أو الاستايلات مضغوط و الاسكربت بيفكه تلقائي
و ........... الي ما شاء الله علي حسب احتياجاتك
الكائن المستخدم في هذه المكتبة هو ZipArchive
أول عملية هنتعلمها سوا هي
ضغط الملفات
هنستدعي الكائن في الاول
كود PHP:
$zip = new ZipArchive;
بعد كده هنستخدم الداله
open
التابعة للكائن في فتح الملف
كود PHP:
if ($zip->open('test.zip') === TRUE) {
إذا تمت عملية فتح الملف سيقوم البرنامج بتنفيذ ما داخل الشرط
بعد ذلك سنستخدم الدالة
addFile
و هي المسئوله عن إضافة الملفات العاديه و دمجها في ملف مضغوط
تأخذ مدخلين الاول و هو مسار الملف بالكامل و الثاني هو اسم الملف فقط
مثال كامل
كود PHP:
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->addFile('C:/AppServ/www/tools/h.txt', 'h.txt');
$zip->addFile('C:/AppServ/www/tools/g.php', 'g.php');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
لمعلومات اكثر عن الدالة
addFile
نلاحظ اننا بعد استخدام الدالة
addFile
قمنا بإغلاق المكتبة
بإستخدام
و هذه خطوه هامه احرص عليها للحفاظ علي الذاكرة و موارد السيرفر
فك ضغط الملفات
هنفتح الملف في الاول بعد استدعاء الكائن زي ما عملنا فوق
كود PHP:
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
بعد كده هنستخدم الدالة
extractto
في فك ضغط الملف
بتأخذ مدخل واحد و هو مسار المجلد المراد فك ضغط الملف فيه
مثال
كود PHP:
$zip->extractTo('C:/AppServ/www/my/');
و في النهاية سنقوم كما فعلنا في الاعلى باغلاق المكتبة
الكود كامل
كود PHP:
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->extractTo('C:/AppServ/www/my/');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
و بكده اكون وصلت لنهاية المقالة و ان شاء الله نكمل سوا درس برمجة الاسكربت الاخباري في اقرب فرصه
اطيب اللحظات
حازم علي