# Phar->setMetaData

(PECL phar:1.0.0-1.2.1)

Phar->setMetaData — Sets phar archive meta-data

### Description

void 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()