PharData::buildFromDirectory()
(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 2.0.0)
Construct a tar/zip archive from the files within a directory
说明
public Phar::buildFromDirectory(string $base_dir[,string $regex]): array
Populate a tar/zip archive from directory contents. The optional second parameter is a regular expression(pcre)that is used to exclude files. Any filename that matches the regular expression will be included, all others will be excluded. For more fine-grained control, use PharData::buildFromIterator().
参数
- $base_dir
The full or relative path to the directory that contains all files to add to the archive.
- $regex
An optional pcre regular expression that is used to filter the list of files. Only file paths matching the regular expression will be included in the archive.
返回值
Phar::buildFromDirectory() returns an associative array mapping internal path of file to the full path of the file on the filesystem.
错误/异常
This method throws BadMethodCallException when unable to instantiate the internal directory iterators, or a PharException if there were errors saving the phar archive.
范例
A PharData::buildFromDirectory() example
<?php $phar = new PharData('project.tar'); // add all files in the project $phar->buildFromDirectory(dirname(__FILE__) . '/project'); $phar2 = new PharData('project2.zip'); // add all files in the project, only include php files $phar2->buildFromDirectory(dirname(__FILE__) . '/project', '/\.php$/'); ?>
参见
- Phar::buildFromDirectory() Construct a phar archive from the files within a directory
- PharData::buildFromIterator() Construct a tar or zip archive from an iterator
buildFromDirectory won't add empty subdirectories on 7.2