PHP8 Phar::buildFromDirectory

2024-02-20 09:16 更新

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

Phar::buildFromDirectory — 从目录中的文件构建 phar 存档

说明

public Phar::buildFromDirectory(string $directory, string $pattern = ""): array
注意:此方法需要 将 php.ini 中的 phar.readonly 设为 0 以适合 Phar 对象. 否则, 将抛出PharException.

从目录内容填充 phar 存档。可选的第二个 参数是用于排除文件的正则表达式 (PCRE)。 将包含与正则表达式匹配的任何文件名,所有其他文件名都将包括 排除。对于更细粒度的控制,请使用 Phar::buildFromIterator()。

参数

directory

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

pattern

用于筛选 文件列表。仅与正则表达式匹配的文件路径 将包含在存档中。

返回值

Phar::buildFromDirectory() 返回一个关联数组 将文件的内部路径映射到 文件系统。

错误/异常

此方法在无法时引发 BadMethodCallException 实例化内部目录迭代器, 如果存在错误,则为 PharException 保存 Phar 存档。

更新日志

版本说明
8.1.0Phar::buildFromDirectory() 不再返回 false

示例

示例 #1 A Phar::buildFromDirectory() example

<?php
// create with alias "project.phar"
$phar = new Phar('project.phar', 0, 'project.phar');
// add all files in the project
$phar->buildFromDirectory(dirname(__FILE__) . '/project');
$phar->setStub($phar->createDefaultStub('cli/index.php', 'www/index.php'));

$phar2 = new Phar('project2.phar', 0, 'project2.phar');
// add all files in the project, only include php files
$phar2->buildFromDirectory(dirname(__FILE__) . '/project', '/\.php$/');
$phar2->setStub($phar->createDefaultStub('cli/index.php', 'www/index.php'));
?>

参见

  • Phar::buildFromIterator() - 从迭代器构造 phar 存档


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号