Новости | Документация | Download | Webboard | FAQ | Поиск | Контакты


PharFileInfo::setMetaData

(PHP >= 5.3.0, PECL phar >= 1.0.0)

PharFileInfo::setMetaDataSets file-specific meta-data saved with a file

Описание

void PharFileInfo::setMetaData ( mixed $metadata )

PharFileInfo::setMetaData() should only be used to store customized data in a file that cannot be represented with existing information stored with a file. Meta-data can significantly slow down the performance of loading a phar archive if the data is large, or if there are many files containing meta-data. It is important to note that file permissions are natively supported inside a phar; it is possible to set them with the PharFileInfo::chmod() method. As with all functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in order to succeed if the file is within a Phar archive. Files within PharData archives do not have this restriction.

Some possible uses for meta-data include passing a user/group that should be set when a file is extracted from the phar to disk. Other uses could include explicitly specifying a MIME type to return. However, any useful data that describes a file, but should not be contained inside of it may be stored.

Список параметров

metadata

Any PHP variable containing information to store alongside a file

Примеры

Пример #1 A PharFileInfo::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.txt'] = 'hello';
    
$p['file.txt']->setMetaData(array('user' => 'bill''mime-type' => 'text/plain'));
    
var_dump($p['file.txt']->getMetaData());
} catch (
Exception $e) {
    echo 
'Could not create/modify phar: '$e;
}
?>

Результат выполнения данного примера:

array(2) {
  ["user"]=>
  string(4) "bill"
  ["mime-type"]=>
  string(10) "text/plain"
}

Смотрите также






  Copyright Apache.ru © 1999-2017, All Rights Reserved Разработка сайта: Inside.ru  
  РЕКЛАМА НА САЙТЕ: |