<?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 => 'pt_BR',
  ),
  'this' => 
  array (
    0 => 'book.dbase.php',
    1 => 'dBase',
    2 => 'dBase',
  ),
  'up' => 
  array (
    0 => 'refs.database.vendors.php',
    1 => 'Extens&otilde;es de Banco de Dados Espec&iacute;ficas de Terceiros',
  ),
  'prev' => 
  array (
    0 => 'function.cubrid-send-glo.php',
    1 => 'cubrid_send_glo',
  ),
  'next' => 
  array (
    0 => 'dbase.setup.php',
    1 => 'Instala&ccedil;&atilde;o/Configura&ccedil;&atilde;o',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'pt_BR',
    '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">Introdução</h1>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    Esta extensão foi movida para o repositório <a href="https://pecl.php.net/" class="link external">&raquo;&nbsp;PECL</a>
e não é mais distribuída com o PHP desde a versão 5.3.0.
   </p>
  </p></blockquote>
  <p class="para">
   Essas funções permitem acessar registros armazenados em bancos de dados no formato
   dBase (dbf).
  </p>
  <div class="warning"><strong class="warning">Aviso</strong>
   <p class="para">
    Não é recomendado usar arquivos dBase como banco de dados
    de produção. Use o <a href="http://sqlite.org/" class="link external">&raquo;&nbsp;SQLite</a> ou escolha qualquer servidor SQL real; <a href="http://www.mysql.com/" class="link external">&raquo;&nbsp;MySQL</a> ou <a href="http://www.postgresql.org/" class="link external">&raquo;&nbsp;Postgres</a>
    são escolhas comuns com o PHP. O suporte ao dBase está aqui para permitir
    importação e exportação de dados de e para seu banco de dados da web, porque o
    formato de arquivo é comumente entendido por planilhas e organizadores
    do Windows.
   </p>
  </div>
  <div class="caution"><strong class="caution">Cuidado</strong>
   <p class="para">
    A partir do dBase 7.0.0, os bancos de dados são bloqueados automaticamente via
    <span class="function"><a href="function.flock.php" class="function">flock()</a></span>. Não havia suporte para bloqueio anteriormente,
    portanto, dois processos simultâneos de servidor web modificando o mesmo arquivo dBase
    provavelmente teriam arruinado um banco de dados. Isso pode acontecer mesmo com o dBase
    7.0.0+ em sistemas que implementam os bloqueios no nível do processo com
    SAPIs multithread.
   </p>
  </div>
  <p class="para">
   Os arquivos dBase são arquivos sequenciais simples de registros de comprimento fixo.
   Os registros são anexados ao final do arquivo e os registros excluídos são
   mantidos até a chamada a <span class="function"><a href="function.dbase-pack.php" class="function">dbase_pack()</a></span>.
  </p>
  <p class="para">
   Somente arquivos dbf de nível 3 (dBASE III+) a 5 (dBASE V) são suportados.
   Os tipos de campos dBase disponíveis são:
   <table class="doctable table">
    <caption><strong>Tipos de campos disponíveis</strong></caption>
    
     <thead>
      <tr>
       <th>Campo</th>
       <th>Tipo dBase</th>
       <th>Formato</th>
       <th>Informações adicionais</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td><code class="literal">M</code></td>
       <td>Memo</td>
       <td>n/a</td>
       <td>Este tipo não é suportado pelo PHP, tal campo será ignorado</td>
      </tr>

      <tr>
       <td><code class="literal">D</code></td>
       <td>Date</td>
       <td><code class="literal">YYYYMMDD</code></td>
       <td>O comprimento do campo é 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) Nenhuma verificação de validade é feita. Disponível a partir do dBase 7.0.0.</td>
      </tr>

      <tr>
       <td><code class="literal">N</code></td>
       <td>Number</td>
       <td>Um número</td>
       <td>
        Deve-se declarar um comprimento e uma precisão (o número de dígitos
        após o separador de decimais).
       </td>
      </tr>

      <tr>
       <td><code class="literal">F</code></td>
       <td>Float</td>
       <td>Um número float</td>
       <td>Igual a <code class="literal">N</code>.</td>
      </tr>

      <tr>
       <td><code class="literal">C</code></td>
       <td>String</td>
       <td>Uma string</td>
       <td>Deve-se declarar um comprimento. Ao recuperar dados, a string
       será preenchida à direita com espaços para caber no comprimento declarado. Strings
       muito longas serão truncadas silenciosamente ao armazenar dados.</td>
      </tr>

      <tr>
       <td><code class="literal">L</code></td>
       <td>Boolean</td>
       <td>
        <code class="literal">T</code> ou <code class="literal">Y</code> para <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>,
        <code class="literal">F</code> ou <code class="literal">N</code> para <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>,
        <code class="literal">?</code> para não inicializado.
       </td>
       <td>
        A partir do dBase 7.0.0, retornado como um <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> ou <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>),
        ou <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> para campos não inicializados.
        Anteriormente, retornado como <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> (<code class="literal">1</code> ou <code class="literal">0</code>).
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    A partir do dBase 7.0.0, campos anuláveis são suportados para bancos de dados
    <strong><code><a href="dbase.constants.php#constant.dbase-type-foxpro">DBASE_TYPE_FOXPRO</a></code></strong>. Se um campo for anulável,
    passar <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> definirá o respectivo sinalizador e, na recuperação posterior,
    o valor do 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">
    Não há suporte para índices ou campos memo.
   </p>
  </p></blockquote>
 </div>
 

 







 







 


 




<ul class="chunklist chunklist_book"><li><a href="dbase.setup.php">Instala&ccedil;&atilde;o/Configura&ccedil;&atilde;o</a><ul class="chunklist chunklist_book chunklist_children"><li><a href="dbase.installation.php">Instala&ccedil;&atilde;o</a></li><li><a href="dbase.resources.php">Tipos de Recurso</a></li></ul></li><li><a href="dbase.constants.php">Constantes predefinidas</a></li><li><a href="ref.dbase.php">Fun&ccedil;&otilde;es da dBase</a><ul class="chunklist chunklist_book chunklist_children"><li><a href="function.dbase-add-record.php">dbase_add_record</a> — Adiciona um registro a um banco de dados</li><li><a href="function.dbase-close.php">dbase_close</a> — Fecha um banco de dados</li><li><a href="function.dbase-create.php">dbase_create</a> — Cria um banco de dados</li><li><a href="function.dbase-delete-record.php">dbase_delete_record</a> — Exclui um registro do banco de dados</li><li><a href="function.dbase-get-header-info.php">dbase_get_header_info</a> — Obt&eacute;m as informa&ccedil;&otilde;es do cabe&ccedil;alho do banco de dados</li><li><a href="function.dbase-get-record.php">dbase_get_record</a> — Obt&eacute;m um registro do banco de dados como um array indexado</li><li><a href="function.dbase-get-record-with-names.php">dbase_get_record_with_names</a> — Obt&eacute;m um registro do banco de dados como um array associativo.</li><li><a href="function.dbase-numfields.php">dbase_numfields</a> — Obt&eacute;m o n&uacute;mero de campos em um banco de dados</li><li><a href="function.dbase-numrecords.php">dbase_numrecords</a> — Obt&eacute;m o n&uacute;mero de registros em um banco de dados</li><li><a href="function.dbase-open.php">dbase_open</a> — Abre um banco de dados</li><li><a href="function.dbase-pack.php">dbase_pack</a> — Comprime um banco de dados</li><li><a href="function.dbase-replace-record.php">dbase_replace_record</a> — Substitui um registro em um banco de dados</li></ul></li></ul></div><?php manual_footer($setup); ?>