1--TEST-- 2Phar::setStub()/getStub() zip-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.zip'; 12 13$phar = new Phar($fname); 14$phar->setStub($stub = '<?php echo "first stub\n"; __HALT_COMPILER(); ?>' . "\r\n"); 15$phar->setAlias('hio'); 16$phar['a'] = 'a'; 17$phar->stopBuffering(); 18 19var_dump($phar->getStub()); 20var_dump($phar->getStub() == $stub); 21 22$newstub = '<?php echo "second stub\n"; _x_HALT_COMPILER(); ?>'; 23try 24{ 25 $phar->setStub($newstub); 26} 27catch(exception $e) 28{ 29 echo 'Exception: ' . $e->getMessage() . "\n"; 30} 31var_dump($phar->getStub()); 32var_dump($phar->getStub() == $stub); 33$phar->stopBuffering(); 34var_dump($phar->getStub()); 35var_dump($phar->getStub() == $stub); 36 37?> 38--CLEAN-- 39<?php 40unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.zip'); 41__HALT_COMPILER(); 42?> 43--EXPECTF-- 44string(50) "<?php echo "first stub\n"; __HALT_COMPILER(); ?> 45" 46bool(true) 47Exception: illegal stub for zip-based phar "%sphar_stub_error.phar.zip" 48string(50) "<?php echo "first stub\n"; __HALT_COMPILER(); ?> 49" 50bool(true) 51string(50) "<?php echo "first stub\n"; __HALT_COMPILER(); ?> 52" 53bool(true) 54