(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::addFile — 将文件系统中的文件添加到 tar/zip 档案
使用此方法,任何文件或 URL 都可以添加到 tar/zip 档案。如果指定了可选的第二个参数 localname
,则该文件将使用该名称存储在档案中,否则将使用 file
参数作为存储在档案中的路径。URL 必须具有 localname,否则会抛出异常。此方法类似于 ZipArchive::addFile()。
filename
要添加到 phar 档案的磁盘上文件的完整路径或相对路径。
localName
该文件将存储在档案中的路径。
没有返回值,失败时会抛出异常。
版本 | 说明 |
---|---|
8.0.0 |
localName 现在可以为空。 |
示例 #1 一个 PharData::addFile() 示例
<?php
try {
$a = new PharData('/path/to/my.tar');
$a->addFile('/full/path/to/file');
// 演示此文件是如何存储的
$b = $a['full/path/to/file']->getContent();
$a->addFile('/full/path/to/file', 'my/file.txt');
$c = $a['my/file.txt']->getContent();
// 演示 URL 用法
$a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
// 在此处处理错误
}
?>
注意: PharData::addFile()、PharData::addFromString() 和 PharData::offsetSet() 每次调用时都会保存一个新的 phar 档案。如果性能是一个问题,则应使用 PharData::buildFromDirectory() 或 PharData::buildFromIterator() 代替。