PHP Conference Japan 2024

PharData::buildFromDirectory

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

PharData::buildFromDirectory從目錄中的檔案建構 tar/zip 封存檔

說明

公開 PharData::buildFromDirectory(字串 $directory, 字串 $pattern = ""): 陣列

從目錄內容填充 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$/');
?>

參見

新增筆記

使用者貢獻的筆記 1 則筆記

dan
5 年前
buildFromDirectory 在 7.2 版本無法新增空的子目錄
To Top