<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/refs.database.vendors.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'book.dbase.php',
    1 => 'dBase',
    2 => 'dBase',
  ),
  'up' => 
  array (
    0 => 'refs.database.vendors.php',
    1 => 'Extensiones de bases de datos espec&iacute;ficas del proveedor',
  ),
  'prev' => 
  array (
    0 => 'function.cubrid-send-glo.php',
    1 => 'cubrid_send_glo',
  ),
  'next' => 
  array (
    0 => 'dbase.setup.php',
    1 => 'Instalaci&oacute;n/Configuraci&oacute;n',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/dbase/book.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/book.dbase.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="book.dbase" class="book">
 
 <h1 class="title">dBase</h1>

 
 <div id="intro.dbase" class="preface">
  <h1 class="title">Introducción</h1>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    Esta extensión ha sido movida al módulo <a href="https://pecl.php.net/" class="link external">&raquo;&nbsp;PECL</a> y no será integrada en PHP a partir de PHP 5.3.0.
   </p>
  </p></blockquote>
  <p class="para">
   Estas funciones permiten acceder a los registros de las bases
   de datos en formato dBase (dbf).
  </p>
  <div class="warning"><strong class="warning">Advertencia</strong>
   <p class="para">
    Se recomienda no utilizar los ficheros dBase como base de datos de producción. Utilice
    <a href="http://sqlite.org/" class="link external">&raquo;&nbsp;SQLite</a> o mejor opte por un verdadero
    servidor SQL;
    <a href="http://www.mysql.com/" class="link external">&raquo;&nbsp;MySQL</a> o
    <a href="http://www.postgresql.org/" class="link external">&raquo;&nbsp;PostgreSQL</a>
    son opciones comunes en PHP. El soporte dBase está presente en PHP
    únicamente para permitir la importación y exportación de datos
    desde y hacia su base de datos, ya que este formato de fichero
    es habitualmente comprendido por los programas de hoja de cálculo de Windows.
   </p>
  </div>
  <div class="caution"><strong class="caution">Precaución</strong>
   <p class="para">
    A partir de dbase 7.0.0 las bases de datos son automáticamente bloqueadas
    via <span class="function"><a href="function.flock.php" class="function">flock()</a></span>. No había soporte para el bloqueo
    previamente, por lo que dos procesos de servidor web concurrentes modificando el mismo
    fichero dBase probablemente habrían arruinado su base de datos. Esto puede ocurrir incluso con dbase 7.0.0+ en sistemas que implementan el bloqueo
    a nivel de proceso con las SAPIs multithreaded.
   </p>
  </div>
  <p class="para">
   Los ficheros dBase son simples ficheros secuenciales, con un
   número de registros fijo. Los registros son añadidos
   al final del fichero y los registros borrados son
   conservados hasta que se llame a la función
   <span class="function"><a href="function.dbase-pack.php" class="function">dbase_pack()</a></span>.
  </p>
  <p class="para">
   Solo se soportan los ficheros dbf niveles 3 (dBASE III+) - 5 (dBASE V).
   Los tipos de campos dBase disponibles son:
   <table class="doctable table">
    <caption><strong>Tipo de campos disponible</strong></caption>
    
     <thead>
      <tr>
       <th>Campo</th>
       <th>Tipo dBase</th>
       <th>Formato</th>
       <th>Información complementaria</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td><code class="literal">M</code></td>
       <td>Memo</td>
       <td>n/a</td>
       <td>Este tipo no es soportado por PHP, y será ignorado</td>
      </tr>

      <tr>
       <td><code class="literal">D</code></td>
       <td>Date</td>
       <td><code class="literal">YYYYMMDD</code></td>
       <td>El tamaño del campo está limitado a 8</td>
      </tr>

      <tr>
       <td><code class="literal">T</code></td>
       <td>DateTime</td>
       <td><code class="literal">YYYYMMDDhhmmss.uuu</code></td>
       <td>(FoxPro) No se realizan verificaciones de validez. Disponible a partir de dbase 7.0.0.</td>
      </tr>

      <tr>
       <td><code class="literal">N</code></td>
       <td>Number</td>
       <td>Un número</td>
       <td>
        Se debe declarar un tamaño y una precisión (el número de dígitos
        después del punto decimal).
       </td>
      </tr>

      <tr>
       <td><code class="literal">F</code></td>
       <td>Float</td>
       <td>Un número flotante</td>
       <td>Idéntico a <code class="literal">N</code>.</td>
      </tr>

      <tr>
       <td><code class="literal">C</code></td>
       <td><span class="type"><a href="language.types.string.php" class="type string">string</a></span></td>
       <td>Una cadena de caracteres</td>
       <td>
        Se debe declarar un tamaño. Al recuperar los
        datos, la cadena será completada con espacios para alcanzar el
        tamaño declarado. Las cadenas demasiado largas serán truncadas silenciosamente
        al guardar.
       </td>
      </tr>

      <tr>
       <td><code class="literal">L</code></td>
       <td><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></td>
       <td>
        <code class="literal">T</code> o <code class="literal">Y</code> para <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>,
        <code class="literal">F</code> o <code class="literal">N</code> para <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>,
        <code class="literal">?</code> para no inicializada.
       </td>
       <td>
        A partir de dbase 7.0.0, devuelto como <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> (<strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> o <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>),
        o <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> para los campos no inicializados
        Anteriormente, devuelto como <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> (<code class="literal">1</code> o <code class="literal">0</code>).
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    A partir de dbase 7.0.0 los campos nullable son soportados para las bases de
    datos <strong><code><a href="dbase.constants.php#constant.dbase-type-foxpro">DBASE_TYPE_FOXPRO</a></code></strong>. Si un campo es nullable,
    pasar <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> definirá el flag respectivo, y al recuperarlo
    el valor del campo será <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>.
   </p>
  </p></blockquote>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    No hay soporte para índices o campos memo.
   </p>
  </p></blockquote>
 </div>
 

 








 








 









<ul class="chunklist chunklist_book"><li><a href="dbase.setup.php">Instalaci&oacute;n/Configuraci&oacute;n</a><ul class="chunklist chunklist_book chunklist_children"><li><a href="dbase.installation.php">Instalaci&oacute;n</a></li><li><a href="dbase.resources.php">Tipos de recursos</a></li></ul></li><li><a href="dbase.constants.php">Constantes predefinidas</a></li><li><a href="ref.dbase.php">Funciones dBase</a><ul class="chunklist chunklist_book chunklist_children"><li><a href="function.dbase-add-record.php">dbase_add_record</a> — A&ntilde;ade un registro en una base de datos dBase</li><li><a href="function.dbase-close.php">dbase_close</a> — Cierra una base dBase</li><li><a href="function.dbase-create.php">dbase_create</a> — Crea una base de datos dBase</li><li><a href="function.dbase-delete-record.php">dbase_delete_record</a> — Borra un registro en una base dBase</li><li><a href="function.dbase-get-header-info.php">dbase_get_header_info</a> — Recupera informaci&oacute;n de encabezado de una base de datos dBase</li><li><a href="function.dbase-get-record.php">dbase_get_record</a> — Lee un registro en una base dBase</li><li><a href="function.dbase-get-record-with-names.php">dbase_get_record_with_names</a> — Lee un registro en una base dBase, en forma de array asociativo</li><li><a href="function.dbase-numfields.php">dbase_numfields</a> — Cuenta el n&uacute;mero de campos de una base dBase</li><li><a href="function.dbase-numrecords.php">dbase_numrecords</a> — Cuenta el n&uacute;mero de registros en una base dBase</li><li><a href="function.dbase-open.php">dbase_open</a> — Abre una base dBase</li><li><a href="function.dbase-pack.php">dbase_pack</a> — Compacta una base dBase</li><li><a href="function.dbase-replace-record.php">dbase_replace_record</a> — Reemplaza un registro en una base dBase</li></ul></li></ul></div><?php manual_footer($setup); ?>