# PharData::buildFromDirectory

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

PharData::buildFromDirectory — Construit une archive tar/zip à partir des fichiers d'un répertoire

### Description

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

Remplit une archive tar/zip à partir du contenu d'un répertoire. Le second paramètre optionnel est une expression rationnelle (pcre) utilisée pour exclure des fichiers. N'importe quel fichier dont le nom satisfait sera inclus, tous les autres seront exclus. Pour un contrôle plus fin, utilisez PharData::buildFromIterator().

### Liste de paramètres

`directory`

  Le chemin relatif ou absolu vers le répertoire contenant tous les fichiers à ajouter à l'archive.

`pattern`

  Une expression rationnelle optionnelle qui est utilisée pour filtrer la liste des fichiers. Seuls les fichiers dont le nom satisfont l'expression seront inclus dans l'archive.

### Valeurs de retour

Phar::buildFromDirectory() retourne un tableau associatif faisant correspondre un chemin de fichier interne vers un chemin complet sur le système de fichiers, ou `false` si une erreur survient.

### Erreurs / Exceptions

Cette méthode soulève une exception BadMethodCallException quand elle est incapable d'instancier les itérateurs interne de répertoire, ou une exception PharException si des erreurs ont été rencontrée lors de l'enregistrement de l'archive phar.

### Historique

Version | Description
--- | ---
8.1.0 | PharData::buildFromDirectory() ne retourne plus `false`.

### Exemples

Exemple #1 Un exemple avec PharData::buildFromDirectory()

`<?php
$phar = new PharData('projet.tar');
// ajoute tous les fichiers au projet
$phar->buildFromDirectory(dirname(__FILE__) . '/projet');
$phar2 = new PharData('projet2.zip');
// ajoute tous les fichiers au projet en n'incluant que les fichiers php
$phar2->buildFromDirectory(dirname(__FILE__) . '/projet', '/\.php$/');
?>`

### Voir aussi

- Phar::buildFromDirectory() - Construit une archive phar à partir des fichiers d'un répertoire
- PharData::buildFromIterator() - Construit une archive tar ou zip à partir d'un itérateur