(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::addFile — 將檔案系統中的檔案新增至 phar 封存檔
注意:
此方法需要將 php.ini 設定中的
phar.readonly
設定為0
,才能對 Phar 物件起作用。否則,將會拋出 PharException。
使用此方法,任何檔案或 URL 都可以新增至 phar 封存檔。如果選擇性的第二個參數 localName
為 string,則檔案將以該名稱儲存在封存檔中,否則 file
參數將用作儲存在封存檔中的路徑。URL 必須具有 localname,否則會拋出例外。此方法類似於 ZipArchive::addFile()。
filename
要新增至 phar 封存檔的磁碟上檔案的完整或相對路徑。
localName
檔案將儲存在封存檔中的路徑。
沒有回傳值,失敗時拋出例外。
版本 | 說明 |
---|---|
8.0.0 |
localName 現在可為 null。 |
範例 1 Phar::addFile() 範例
<?php
try {
$a = new Phar('/path/to/phar.phar');
$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) {
// 在此處理錯誤
}
?>
注意: Phar::addFile()、Phar::addFromString() 和 Phar::offsetSet() 每次呼叫時都會儲存新的 phar 封存檔。如果效能是考量因素,則應改用 Phar::buildFromDirectory() 或 Phar::buildFromIterator()。