1--TEST-- 2Phar::compressFiles(Phar::BZ2) zip format 3--SKIPIF-- 4<?php if (!extension_loaded("phar")) die("skip"); ?> 5<?php if (!extension_loaded("bz2")) die("skip bz2 not present"); ?> 6--INI-- 7phar.readonly=0 8--FILE-- 9<?php 10$fname = __DIR__ . '/' . basename(__FILE__, '.php') . '.phar.zip.php'; 11$fname2 = __DIR__ . '/' . basename(__FILE__, '.php') . '.phar.zip'; 12$pname = 'phar://' . $fname; 13$pname2 = 'phar://' . $fname2; 14 15$phar = new Phar($fname); 16$phar['a'] = 'a'; 17$phar['b'] = 'b'; 18$phar['c'] = 'c'; 19 20var_dump(file_get_contents($pname . '/a')); 21var_dump($phar['a']->isCompressed()); 22var_dump(file_get_contents($pname . '/b')); 23var_dump($phar['b']->isCompressed()); 24var_dump(file_get_contents($pname . '/c')); 25var_dump($phar['c']->isCompressed()); 26 27$phar->compressFiles(Phar::BZ2); 28var_dump(file_get_contents($pname . '/a')); 29var_dump($phar['a']->isCompressed(Phar::GZ)); 30var_dump($phar['a']->isCompressed(Phar::BZ2)); 31var_dump(file_get_contents($pname . '/b')); 32var_dump($phar['b']->isCompressed(Phar::GZ)); 33var_dump($phar['b']->isCompressed(Phar::BZ2)); 34var_dump(file_get_contents($pname . '/c')); 35var_dump($phar['c']->isCompressed(Phar::GZ)); 36var_dump($phar['b']->isCompressed(Phar::BZ2)); 37$phar['d'] = 'hi'; // increases code coverage by having ufp open 38copy($fname, $fname2); 39$c = new Phar($fname2); 40var_dump(file_get_contents($pname2 . '/a')); 41var_dump($c['a']->isCompressed(Phar::GZ)); 42var_dump($c['a']->isCompressed(Phar::BZ2)); 43 44?> 45--CLEAN-- 46<?php 47unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.zip.php'); 48unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.zip'); 49?> 50--EXPECT-- 51string(1) "a" 52bool(false) 53string(1) "b" 54bool(false) 55string(1) "c" 56bool(false) 57string(1) "a" 58bool(false) 59bool(true) 60string(1) "b" 61bool(false) 62bool(true) 63string(1) "c" 64bool(false) 65bool(true) 66string(1) "a" 67bool(false) 68bool(true) 69