1--TEST-- 2Phar::setAlias() error tar-based 3--SKIPIF-- 4<?php if (!extension_loaded("phar")) die("skip"); ?> 5--INI-- 6phar.require_hash=0 7phar.readonly=0 8--FILE-- 9<?php 10 11$fname = __DIR__ . '/' . basename(__FILE__, '.php') . '.phar.tar'; 12 13$phar = new Phar($fname); 14$phar->setStub('<?php echo "first stub\n"; __HALT_COMPILER(); ?>'); 15$phar->setAlias('hio'); 16 17$files = array(); 18 19$files['a'] = 'a'; 20$files['b'] = 'b'; 21$files['c'] = 'c'; 22 23foreach ($files as $n => $file) { 24 $phar[$n] = $file; 25} 26 27$phar->stopBuffering(); 28 29echo $phar->getAlias() . "\n"; 30$phar->setAlias('test'); 31echo $phar->getAlias() . "\n"; 32$b = $phar; 33$phar = new Phar(__DIR__ . '/notphar.phar'); 34 35try { 36 $phar->setAlias('test'); 37} catch (Exception $e) { 38 echo $e->getMessage() . "\n"; 39} 40 41?> 42--CLEAN-- 43<?php 44unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.tar'); 45unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phartmp.tar'); 46__HALT_COMPILER(); 47?> 48--EXPECTF-- 49hio 50test 51alias "test" is already used for archive "%sphar_setalias2.phar.tar" and cannot be used for other archives 52