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
。
当无法实例化内部目录迭代器时,此方法将抛出 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$/');
?>