--TEST-- Phar with metadata (write) --SKIPIF-- --INI-- phar.require_hash=0 phar.readonly=0 --FILE-- "; $files = array(); $files['a'] = array('cont' => 'a'); $files['b'] = array('cont' => 'b', 'meta' => 'hi there'); $files['c'] = array('cont' => 'c', 'meta' => array('hi', 'there')); $files['d'] = array('cont' => 'd', 'meta' => array('hi'=>'there','foo'=>'bar')); include 'files/phar_test.inc'; foreach($files as $name => $cont) { var_dump(file_get_contents($pname.'/'.$name)); } $phar = new Phar($fname); var_dump($phar->getMetadata()); $phar->setMetadata(array('my' => 'friend')); $phar->setMetadata(array('my' => 'friend')); var_dump($phar->getMetadata()); $phar['a']->setMetadata(42); $phar['b']->setMetadata(NULL); $phar['c']->setMetadata(array(25, 'foo'=>'bar')); $phar['d']->setMetadata(true); foreach($files as $name => $cont) { var_dump($phar[$name]->getMetadata()); } unset($phar); foreach($files as $name => $cont) { var_dump(file_get_contents($pname.'/'.$name)); } ?> ===DONE=== --CLEAN-- --EXPECT-- string(1) "a" string(1) "b" string(1) "c" string(1) "d" NULL array(1) { [u"my"]=> unicode(6) "friend" } int(42) NULL array(2) { [0]=> int(25) [u"foo"]=> unicode(3) "bar" } bool(true) string(1) "a" string(1) "b" string(1) "c" string(1) "d" ===DONE===