Phar->setMetaData

(no version information, might be only in CVS)

Phar->setMetaData -- Sets phar archive meta-data

Description

int Phar->setMetaData ( mixed metadata )

setMetaData() should only be used to store customized data that describes something about the phar archive as a complete entity. PharFileInfo->setMetaData() should be used for file-specific meta-data. Meta-data can significantly slow down the performance of loading a phar archive if the data is large. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed.

Some possible uses for meta-data include specifying which file within the archive should be used to bootstrap the archive, or the location of a file manifest like PEAR's package.xml file. However, any useful data that describes the phar archive may be stored.

Parameters

metadata

Any PHP variable containing information to store that describes the phar archive

Examples

Example 1. A Phar->setMetaData() example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    
$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
    
$p['file.php'] = '<?php echo "hello"';
    
$p->setMetaData(array('bootstrap' => 'file.php'));
    
var_dump($p->getMetaData());
}
catch (Exception $e) {
    echo
'Could not create and/or modify phar:', $e;
}
?>

The above example will output:

array(1) {
  ["bootstrap"]=>
  string(8) "file.php"
}

See Also

Phar->getMetaData()