PharData::buildFromDirectory

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

PharData::buildFromDirectory从目录中的文件构建 tar/zip 归档文件

描述

public PharData::buildFromDirectory(string $directory, string $pattern = ""): array

从目录内容填充 tar/zip 归档文件。可选的第二个参数是一个正则表达式 (pcre),用于排除文件。任何与正则表达式匹配的文件名都将被包含,其他所有文件将被排除。为了更细粒度的控制,请使用 PharData::buildFromIterator().

参数

directory

包含要添加到归档文件中的所有文件的目录的完整路径或相对路径。

pattern

一个可选的 pcre 正则表达式,用于过滤文件列表。只有与正则表达式匹配的文件路径才会被包含在归档文件中。

返回值

Phar::buildFromDirectory() 返回一个关联数组,映射文件内部路径到文件在文件系统中的完整路径,或者在失败时返回 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
4 年前
buildFromDirectory 不会在 7.2 上添加空子目录
To Top