PHP.mk документација

Phar::buildFromDirectory

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

phar.buildfromdirectory.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека phar.buildfromdirectory.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Phar::buildFromDirectory

Референца за `phar.buildfromdirectory.php` со подобрена типографија и навигација.

phar.buildfromdirectory.php

Phar::buildFromDirectory

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

Phar::buildFromDirectoryConstruct a phar archive from the files within a directory

= NULL

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

Забелешка:

Се користи за поставување на PHP лоадерот или bootstrap stub на Phar архивата на стандарден лоадер php.ini setting phar.readonly Овој метод бара 0 да биде поставено на за да работи за Phar PharException ќе биде фрлена.

Populate a phar 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 Phar::buildFromIterator().

Параметри

directory

The full or relative path to the directory that contains all files to add to the archive.

pattern

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() враќа асоцијативен список што го мапира внатрешниот пат на датотеката до целокупниот пат на датотеката на файловиот систем.

Errors/Exceptions

Овој метод фрла BadMethodCallException when unable to instantiate the internal directory iterators, or a PharException ако имало грешки при зачувувањето на phar архивата.

Дневник на промени

Верзија = NULL
8.1.0 Phar::buildFromDirectory() веќе не враќа false.

Примери

ако е овозможен колекторот за отпадоци, 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'));
?>

Види Исто така

Белешки од корисници 1 белешка

dalfarra at codref dot com
пред 8 години
If you want to exclude a directory from the archive (but include all the other content), the regular expression must take into consideration the whole path of the file, not just the file or directory name relative to the source folder.

As an example, if we want to exclude "nbproject" directory from the archive (and any occurrence of it):

/tmp/myfolder
  /nbproject
  /something
  /something-else
    /nbproject
  /file1.php
  /file2.php

the regex should be:
<?php
  $exclude = '/^(?!(.*nbproject))(.*)$/i';  //ignoring the case
?>

A more complete example:
<?php
    $archive_file = 'myarchive.tar';
    $folder_to_compress = '/tmp/myfolder';
    $archive = new PharData($archive_file);
    $exclude = '/^(?!(.*nbproject))(.*)$/i';  
    $archive->buildFromDirectory($folder_to_compress,$exclude);
    $archive->compress(Phar::GZ);
    unlink($archive_file); // as we already obtained a tar.gz
?>

the archive will contain:
/
  /something
  /something-else
  /file1.php
  /file2.php
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.