บทนำ
ใน PHP zlib://, bzip2:// และ zip:// เป็น wrapper สำหรับการบีบอัดสตรีม (compression streams) ตามลำดับ
compress.zlib://
ทำงานคล้ายกับฟังก์ชัน gzopen() แต่สามารถใช้กับฟังก์ชันระบบไฟล์ เช่น fread() และอื่นๆ ได้
compress.bzip2://
คล้ายกับฟังก์ชัน bzopen() ทั้งสอง stream wrapper ทำงานได้แม้ในระบบที่ไม่รองรับ fopencookie
zip://
ส่วนขยาย ZIP ลงทะเบียน wrapper นี้ ตั้งแต่ PHP 7.2.0 เป็นต้นมา รองรับไฟล์บีบอัดที่เข้ารหัสด้วยรหัสผ่าน สามารถตั้งรหัสผ่านด้วย context option password
ตัวอย่าง
การบีบอัด zlib สามารถทำได้ด้วยโค้ด PHP ดังนี้
<?php file_put_contents("compress.zlib://test.txt.gz", "Hello World\r\n"); ?>เพื่อถอดการบีบอัด ใช้ไวยากรณ์ดังนี้
<?php echo file_get_contents("compress.zlib://test.txt.gz"); ?>ยังสามารถใช้ฟังก์ชัน copy() สร้างไฟล์ zlib ที่บีบอัดแล้วและถอดการบีบอัดได้
copy('file.txt', 'compress.zlib://' . 'file.txt.gz'); copy('compress.zlib://' . 'file.txt.gz', 'file.txt');