buildFromDirectory 在 7.2 版本無法新增空的子目錄
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::buildFromDirectory — 從目錄中的檔案建構 tar/zip 封存檔
從目錄內容填充 tar/zip 封存檔。 第二個選用參數是一個正規表示式 (pcre),用於排除檔案。 任何符合正規表示式的檔名都會被包含,所有其他檔名都會被排除。 如需更精細的控制,請使用 PharData::buildFromIterator()。
directory
包含要添加到封存檔的所有檔案的目錄的完整或相對路徑。
pattern
一個選用的 pcre 正規表示式,用於過濾檔案列表。 只有符合正規表示式的檔案路徑才會包含在封存檔中。
Phar::buildFromDirectory() 返回一個關聯陣列,將檔案的內部路徑映射到檔案系統上的完整路徑,如果失敗則返回 false
。(但在較新版本中已不再回傳 false)
當無法實例化內部目錄迭代器時,此方法會拋出 BadMethodCallException,如果儲存 phar 封存檔時發生錯誤,則拋出 PharException。
版本 | 說明 |
---|---|
8.1.0 |
PharData::buildFromDirectory() 不再返回 false 。 |
範例 #1 PharData::buildFromDirectory() 範例
<?php
$phar = new PharData('project.tar');
// 加入專案中的所有檔案
$phar->buildFromDirectory(dirname(__FILE__) . '/project');
$phar2 = new PharData('project2.zip');
// 加入專案中的所有檔案,僅包含 php 檔案
$phar2->buildFromDirectory(dirname(__FILE__) . '/project', '/\.php$/');
?>