<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.phar.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'phar.buildfromdirectory.php',
    1 => 'Phar::buildFromDirectory',
    2 => 'Construye un archivo phar a partir de los ficheros de un directorio',
  ),
  'up' => 
  array (
    0 => 'class.phar.php',
    1 => 'Phar',
  ),
  'prev' => 
  array (
    0 => 'phar.apiversion.php',
    1 => 'Phar::apiVersion',
  ),
  'next' => 
  array (
    0 => 'phar.buildfromiterator.php',
    1 => 'Phar::buildFromIterator',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/phar/Phar/buildFromDirectory.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="phar.buildfromdirectory" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">Phar::buildFromDirectory</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.3.0, PHP 7, PHP 8, PECL phar &gt;= 2.0.0)</p><p class="refpurpose"><span class="refname">Phar::buildFromDirectory</span> &mdash; <span class="dc-title">Construye un archivo phar a partir de los ficheros de un directorio</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-phar.buildfromdirectory-description">
  <h3 class="title">Descripción</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">public</span> <span class="methodname"><strong>Phar::buildFromDirectory</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$directory</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$pattern</code><span class="initializer"> = &quot;&quot;</span></span>): <span class="type"><a href="language.types.array.php" class="type array">array</a></span></div>

  <blockquote class="note"><p><strong class="note">Nota</strong>: <p class="para">Este
    método requiere que la variable de configuración INI <code class="literal">phar.readonly</code>
    esté definida a <code class="literal">0</code> para funcionar con los objetos <span class="classname"><a href="class.phar.php" class="classname">Phar</a></span>.
    De lo contrario, se lanzará una excepción <span class="classname"><a href="class.pharexception.php" class="classname">PharException</a></span>.</p></p></blockquote>
  <p class="para">
   Rellena un archivo phar a partir del contenido de un directorio. El segundo parámetro,
   opcional, es una expresión regular (pcre) utilizada para excluir ficheros.
   Todo fichero cuyo nombre cumpla la expresión regular será incluido, los demás serán excluidos.
   Para un control más fino, utilice <span class="function"><a href="phar.buildfromiterator.php" class="function">Phar::buildFromIterator()</a></span>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-phar.buildfromdirectory-parameters">
  <h3 class="title">Parámetros</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">directory</code></dt>
     <dd>
      <p class="para">
       La ruta absoluta o relativa hacia el directorio que contiene todos los ficheros
       a añadir al archivo.
      </p>
     </dd>
    
    
     <dt><code class="parameter">pattern</code></dt>
     <dd>
      <p class="para">
       Una expresión regular opcional utilizada para filtrar la lista
       de ficheros. Solo los ficheros cuyo nombre cumpla la expresión regular
       serán incluidos en el archivo.
      </p>
     </dd>
    
   </dl>
  </p>

 </div>

 <div class="refsect1 returnvalues" id="refsect1-phar.buildfromdirectory-returnvalues">
  <h3 class="title">Valores devueltos</h3>
  <p class="para">
   <span class="function"><strong>Phar::buildFromDirectory()</strong></span> devuelve un array asociativo
   que hace corresponder la ruta interna del fichero con la ruta completa en el sistema
   de ficheros.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-phar.buildfromdirectory-errors">
  <h3 class="title">Errores/Excepciones</h3>
  <p class="para">
   Este método lanza una excepción <span class="classname"><a href="class.badmethodcallexception.php" class="classname">BadMethodCallException</a></span> cuando no es
   capaz de instanciar el iterador de directorio interno,
   o una excepción <span class="classname"><a href="class.pharexception.php" class="classname">PharException</a></span> si ha habido errores durante
   el guardado del archivo.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-phar.buildfromdirectory-changelog">
  <h3 class="title">Historial de cambios</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Versión</th>
      <th>Descripción</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>8.1.0</td>
      <td>
       <span class="methodname"><strong>Phar::buildFromDirectory()</strong></span> ya no devuelve <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-phar.buildfromdirectory-examples">
  <h3 class="title">Ejemplos</h3>
  <div class="example" id="example-1">
   <p><strong>Ejemplo #1 Un ejemplo con <span class="function"><strong>Phar::buildFromDirectory()</strong></span></strong></p>
  <div class="example-contents"><p>

  </p></div>
  <div class="example-contents"><p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// crea con el alias "proyecto.phar"<br /></span><span style="color: #0000BB">$phar </span><span style="color: #007700">= new </span><span style="color: #0000BB">Phar</span><span style="color: #007700">(</span><span style="color: #DD0000">'proyecto.phar'</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #DD0000">'proyecto.phar'</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">// añade ficheros en el proyecto<br /></span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">buildFromDirectory</span><span style="color: #007700">(</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">) . </span><span style="color: #DD0000">'/proyecto'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setStub</span><span style="color: #007700">(</span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">createDefaultWebStub</span><span style="color: #007700">(</span><span style="color: #DD0000">'cli/index.php'</span><span style="color: #007700">, </span><span style="color: #DD0000">'www/index.php'</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$phar2 </span><span style="color: #007700">= new </span><span style="color: #0000BB">Phar</span><span style="color: #007700">(</span><span style="color: #DD0000">'proyecto2.phar'</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #DD0000">'proyecto2.phar'</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">// añade todos los ficheros en el proyecto, pero solo los ficheros .php<br /></span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">buildFromDirectory</span><span style="color: #007700">(</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">) . </span><span style="color: #DD0000">'/proyecto'</span><span style="color: #007700">, </span><span style="color: #DD0000">'/\.php$/'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setStub</span><span style="color: #007700">(</span><span style="color: #0000BB">$phar</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">createDefaultStub</span><span style="color: #007700">(</span><span style="color: #DD0000">'cli/index.php'</span><span style="color: #007700">, </span><span style="color: #DD0000">'www/index.php'</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </p></div>
  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-phar.buildfromdirectory-seealso">
  <h3 class="title">Ver también</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="function"><a href="phar.buildfromiterator.php" class="function" rel="rdfs-seeAlso">Phar::buildFromIterator()</a> - Construye un archivo phar a partir de un iterador</span></li>
   </ul>
  </p>
 </div>


</div><?php manual_footer($setup); ?>