<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/phar.fileformat.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'phar.fileformat.phar.php',
    1 => 'El formato de archivo Phar',
    2 => 'El formato de archivo Phar',
  ),
  'up' => 
  array (
    0 => 'phar.fileformat.php',
    1 => '&iquest;Qu&eacute; hace que un phar sea un phar y no un tar o un zip?',
  ),
  'prev' => 
  array (
    0 => 'phar.fileformat.zip.php',
    1 => 'Los phars basados en Zip',
  ),
  'next' => 
  array (
    0 => 'phar.fileformat.flags.php',
    1 => 'Flags &quot;bitmapped&quot; globales del Phar',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/phar/fileformat.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="phar.fileformat.phar" class="section">
  <h2 class="title">El formato de archivo Phar</h2>
  <p class="para">
   El formato de archivo phar está compuesto por contenedor/manifiesto/contenido/firma, y almacena
   las informaciones cruciales de lo que está contenido en el archivo phar en su
   <code class="literal">manifiesto</code>.
  </p>
  <p class="para">
   El manifiesto Phar es un formato altamente optimizado que permite la especificación archivo por archivo
   de la compresión, los permisos y hasta metadatos de usuario tales como el usuario o el
   grupo propietario. Todos los valores de más de un byte son almacenados en formato little-endian,
   A excepción de la versión de la API que es almacenada por razones históricas en 3 trozos
   big-endian.
  </p>
  <p class="para">
   Todos los flags no utilizados están reservados para un uso futuro y no deben ser utilizados
   para almacenar informaciones personalizadas. Utilice los metadatos por archivo para almacenar
   metadatos personalizados sobre archivos particulares.
  </p>
  <p class="para">
   El formato de archivo básico del manifiesto de un archivo Phar es el siguiente:
  </p>
  <p class="para">
   <table class="doctable table">
    <caption><strong>Formato global del manifiesto Phar</strong></caption>
    
     <thead>
      <tr>
       <th>Tamaño en bytes</th>
       <th>Descripción</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>4 bytes</td>
       <td>Longitud del manifiesto en bytes (limitada a 1 MB)</td>
      </tr>

      <tr>
       <td>4 bytes</td>
       <td>Número de archivos en el Phar</td>
      </tr>

      <tr>
       <td>2 bytes</td>
       <td>Versión de la API del manifiesto Phar (actualmente 1.0.0)</td>
      </tr>

      <tr>
       <td>4 bytes</td>
       <td>Flags &quot;bitmapped&quot; globales del Phar</td>
      </tr>

      <tr>
       <td>4 bytes</td>
       <td>Longitud del alias Phar</td>
      </tr>

      <tr>
       <td>??</td>
       <td>El alias Phar (longitud basada en el valor anterior)</td>
      </tr>

      <tr>
       <td>4 bytes</td>
       <td>Longitud de los metadatos Phar (<code class="literal">0</code> si no hay)</td>
      </tr>

      <tr>
       <td>??</td>
       <td>Metadatos Phar serializados, almacenados en un formato <span class="function"><a href="function.serialize.php" class="function">serialize()</a></span></td>
      </tr>

      <tr>
       <td>al menos 24 * bytes de las entradas</td>
       <td>Entradas para cada archivo</td>
      </tr>

     </tbody>
    
   </table>

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