#define PHAR_ENT_PERM_DEF_FILE 0x000001B6
#define PHAR_ENT_PERM_DEF_DIR 0x000001FF
-#define PHAR_FORMAT_PHAR 0
-#define PHAR_FORMAT_TAR 1
-#define PHAR_FORMAT_ZIP 2
+#define PHAR_FORMAT_SAME 0
+#define PHAR_FORMAT_PHAR 1
+#define PHAR_FORMAT_TAR 2
+#define PHAR_FORMAT_ZIP 3
#define TAR_FILE '0'
#define TAR_LINK '1'
switch (format) {
case 9021976:
+ case PHAR_FORMAT_SAME: /* null is converted to 0 */
/* by default, use the existing format */
if (phar_obj->arc.archive->is_tar) {
format = PHAR_FORMAT_TAR;
switch (format) {
case 9021976:
+ case PHAR_FORMAT_SAME: /* null is converted to 0 */
/* by default, use the existing format */
if (phar_obj->arc.archive->is_tar) {
format = PHAR_FORMAT_TAR;
echo $phar->getPath() . "\n";
$phar['a'] = 'hi';
$phar['a']->setMetadata('hi');
+$zip = $phar->convertToExecutable(Phar::ZIP);
+echo $zip->getPath() . "\n";
+echo $zip['a']->getMetadata() . "\n";
$tar = $phar->convertToExecutable(Phar::TAR);
+echo $tar->getPath() . "\n";
+$tgz = $tar->convertToExecutable(null, Phar::GZ);
+echo $tgz->getPath() . "\n";
?>
===DONE===
--CLEAN--
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.tar.bz2');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.tbz');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar');
-unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.tar');
+unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.tar');
+unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.zip');
+unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.tar.gz');
__HALT_COMPILER();
?>
--EXPECTF--
%sphar_convert_again.tar.bz2
Unable to add newly converted phar "%sphar_convert_again.phar" to the list of phars, a phar with that name already exists
%sphar_convert_again2.phar
+%sphar_convert_again2.phar.zip
+hi
+%sphar_convert_again2.phar.tar
+%sphar_convert_again2.phar.tar.gz
===DONE===