<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.pdostatement.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'pt_BR',
  ),
  'this' => 
  array (
    0 => 'pdostatement.fetch.php',
    1 => 'PDOStatement::fetch',
    2 => 'Busca a pr&oacute;xima linha de um resultado',
  ),
  'up' => 
  array (
    0 => 'class.pdostatement.php',
    1 => 'PDOStatement',
  ),
  'prev' => 
  array (
    0 => 'pdostatement.execute.php',
    1 => 'PDOStatement::execute',
  ),
  'next' => 
  array (
    0 => 'pdostatement.fetchall.php',
    1 => 'PDOStatement::fetchAll',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'pt_BR',
    'path' => 'reference/pdo/pdostatement/fetch.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="pdostatement.fetch" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">PDOStatement::fetch</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.1.0, PHP 7, PHP 8, PECL pdo &gt;= 0.1.0)</p><p class="refpurpose"><span class="refname">PDOStatement::fetch</span> &mdash; <span class="dc-title">
   Busca a próxima linha de um resultado
  </span></p>

 </div>
 <div class="refsect1 description" id="refsect1-pdostatement.fetch-description">
  <h3 class="title">Descrição</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">public</span> <span class="modifier">function</span> <span class="methodname"><strong>PDOStatement::fetch</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$mode</code><span class="initializer"> = <strong><code><a href="pdo.constants.fetch-modes.php#pdo.constants.fetch-default">PDO::FETCH_DEFAULT</a></code></strong></span></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$cursorOrientation</code><span class="initializer"> = <strong><code><a href="pdo.constants.php#pdo.constants.fetch-ori-next">PDO::FETCH_ORI_NEXT</a></code></strong></span></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$cursorOffset</code><span class="initializer"> = 0</span></span>): <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span></div>


  <p class="para rdfs-comment">
   Busca uma linha de um resultado associado com um objeto PDOStatement object. O
   parâmetro <code class="parameter">mode</code> determina como o PDO retorna
   a linha.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-pdostatement.fetch-parameters">
  <h3 class="title">Parâmetros</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">mode</code></dt>
     <dd>
      <p class="para">
       Controla como a próxima linha será retornada ao chamador. Este valor
       precisa ser uma das constantes <code class="literal">PDO::FETCH_*</code>,
       padronizado para o valor de <code class="literal">PDO::ATTR_DEFAULT_FETCH_MODE</code>
       (cujo padrão é <code class="literal">PDO::FETCH_BOTH</code>).
       <ul class="itemizedlist">
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_ASSOC</code>: retorna um array indexado pelo nome da
          coluna como retornada no resultado
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_BOTH</code> (padrão): retorna um array indexado tanto
          por nome de coluna quanto por número de coluna indexado em 0, como retornado no
          resultado
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_BOUND</code>: retorna <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> e atribui os
          valores das colunas no conjunto de resultados às variáveis PHP às quais
          eles foram vinculados com o método
          <span class="methodname"><a href="pdostatement.bindcolumn.php" class="methodname">PDOStatement::bindColumn()</a></span>
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_CLASS</code>: retorna uma nova instância da classe
          solicitada. O objeto é inicializado mapeando as colunas do
          conjunto de resultados para propriedades na classe. Isso ocorre antes do
          construtor ser chamado, permitindo que as propriedades sejam preenchidas independentemente
          de sua visibilidade ou se estão marcadas como <code class="literal">readonly</code>.
          Se uma propriedade não existir na classe, o método mágico <a href="language.oop5.overloading.php#object.set" class="link">__set()</a>
          será invocado se existir; caso contrário, será criada uma propriedade
          pública dinâmica. Entretanto, quando <strong><code><a href="pdo.constants.fetch-modes.php#pdo.constants.fetch-props-late">PDO::FETCH_PROPS_LATE</a></code></strong>
          também é fornecido, o construtor é chamado <em>antes</em>
          de as propriedades serem preenchidas. Se <code class="parameter">mode</code> incluir
          <strong><code><a href="pdo.constants.fetch-modes.php#pdo.constants.fetch-classtype">PDO::FETCH_CLASSTYPE</a></code></strong> (por exemplo,
          <code class="literal">PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE</code>), o nome
          da classe é determinado a partir do valor da primeira coluna.
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_INTO</code>: atualiza uma instância existente
          da classe solicitada, mapeando as colunas do conjunto de resultados às
          propriedades nomeadas na classe
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_LAZY</code>: combina
          <code class="literal">PDO::FETCH_BOTH</code> e <code class="literal">PDO::FETCH_OBJ</code>,
          e retorna um objeto <span class="classname"><a href="class.pdorow.php" class="classname">PDORow</a></span>
          que cria os nomes das propriedades do objeto conforme elas são acessadas.
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_NAMED</code>: retorna um array com a mesma
          forma de <code class="literal">PDO::FETCH_ASSOC</code>, exceto que se houver
          múltiplas colunas com o mesmo nome, o valor referenciado pela
          chave será um array de todos os valores na linha que tiverem
          esse nome de coluna
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_NUM</code>: retorna um array indexado por número de
          coluna como retornado no conjunto de resultados, iniciando na coluna 0
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_OBJ</code>: retorna um objeto anônimo com
          nomes de propriedades que correspondem ao nomes de colunas retornados no
          conjunto de resultados
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <code class="literal">PDO::FETCH_PROPS_LATE</code>: quando usado com
          <code class="literal">PDO::FETCH_CLASS</code>, o construtor da classe é
          chamado antes que as propriedades sejam atribuídas com os respectivos
          valores das colunas.
         </span>
        </li>
       </ul>
      </p>
     </dd>
    
    
     <dt><code class="parameter">cursorOrientation</code></dt>
     <dd>
      <p class="para">
       Para um objeto PDOStatement representando um cursor navegável, este
       valor determina que linha será retornada ao chamador. Este valor
       precisa ser uma das constantes <code class="literal">PDO::FETCH_ORI_*</code>,
       sendo o padrão igual a <code class="literal">PDO::FETCH_ORI_NEXT</code>. Para requisitar um
       cursor navegável para o objeto PDOStatement, o atributo
       <code class="literal">PDO::ATTR_CURSOR</code> precisa ser definido para
       <code class="literal">PDO::CURSOR_SCROLL</code> ao preparar a instrução
       SQL com <span class="methodname"><a href="pdo.prepare.php" class="methodname">PDO::prepare()</a></span>.
      </p>
     </dd>
    
    
     <dt><code class="parameter">cursorOffset</code></dt>
     <dd>
      <p class="para">
       Para um objeto PDOStatement representando um cursor navegável para o qual
       o parâmetro <code class="parameter">cursorOrientation</code> esteja definido para
       <code class="literal">PDO::FETCH_ORI_ABS</code>, este valor especifica o
       número absoluto da linha no conjunto de resultados que deve ser buscada.
      </p>
      <p class="para">
       Para um objeto PDOStatement representando um cursor navegável para o qual
       o parâmetro <code class="parameter">cursorOrientation</code> esteja definido para
       <code class="literal">PDO::FETCH_ORI_REL</code>, este valor especifica a
       linha a ser buscada relativa à posição do cursor antes do método
       <span class="methodname"><strong>PDOStatement::fetch()</strong></span> ser chamado.
      </p>
     </dd>
    
   </dl>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-pdostatement.fetch-returnvalues">
  <h3 class="title">Valor Retornado</h3>
  <p class="para">
   O valor de retorno desta função em caso de sucesso depende do tipo de busca. Em
   todos os casos, <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> é retornado em caso de falha ou se não houver mais linhas.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-pdostatement.fetch-errors">
  <h3 class="title">Erros/Exceções</h3>
  <p class="simpara">
Emite um erro de nível <strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong> se o atributo <strong><code><a href="pdo.constants.php#pdo.constants.attr-errmode">PDO::ATTR_ERRMODE</a></code></strong> estiver definido
como <strong><code><a href="pdo.constants.php#pdo.constants.errmode-warning">PDO::ERRMODE_WARNING</a></code></strong>.
</p>
<p class="simpara">
Lança uma exceção <span class="classname"><a href="class.pdoexception.php" class="classname">PDOException</a></span> se o atributo <strong><code><a href="pdo.constants.php#pdo.constants.attr-errmode">PDO::ATTR_ERRMODE</a></code></strong>
estiver definido como <strong><code><a href="pdo.constants.php#pdo.constants.errmode-exception">PDO::ERRMODE_EXCEPTION</a></code></strong>.
</p>
 </div>


 <div class="refsect1 examples" id="refsect1-pdostatement.fetch-examples">
  <h3 class="title">Exemplos</h3>
  <p class="para">
   <div class="example" id="example-1"><p><strong>Exemplo #1 Buscando linhas usando estilos de busca diferentes</strong></p>
    <div class="example-contents">
<div class="phpcode"><pre><code style="color: #000000"><span style="color: #0000BB">&lt;?php
$sth </span><span style="color: #007700">= </span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT name, colour FROM fruit"</span><span style="color: #007700">);
</span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">();

</span><span style="color: #FF8000">/* Exercita estilos de PDOStatement::fetch */
</span><span style="color: #007700">print </span><span style="color: #DD0000">"PDO::FETCH_ASSOC: "</span><span style="color: #007700">;
print </span><span style="color: #DD0000">"Retorna a próxima linha como um array indexado por nome de coluna\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ASSOC</span><span style="color: #007700">);
</span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);
print </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;

print </span><span style="color: #DD0000">"PDO::FETCH_BOTH: "</span><span style="color: #007700">;
print </span><span style="color: #DD0000">"Retorna a próxima linha como um array indexado por nome de coluna e número\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_BOTH</span><span style="color: #007700">);
</span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);
print </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;

print </span><span style="color: #DD0000">"PDO::FETCH_LAZY: "</span><span style="color: #007700">;
print </span><span style="color: #DD0000">"Retorna a próxima linha como um objeto PDORow com nomes de colunas como propriedades\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_LAZY</span><span style="color: #007700">);
</span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);
print </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;

print </span><span style="color: #DD0000">"PDO::FETCH_OBJ: "</span><span style="color: #007700">;
print </span><span style="color: #DD0000">"Retorna a próxima linha como um objeto anônimo com nomes de coluna como propriedades\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_OBJ</span><span style="color: #007700">);
print </span><span style="color: #0000BB">$result</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">;
print </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">?&gt;</span></code></pre></div>
    </div>

    <div class="example-contents"><p>O exemplo acima produzirá:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">PDO::FETCH_ASSOC: Retorna a próxima linha como um array indexado por nome de coluna
Array
(
    [name] =&gt; apple
    [colour] =&gt; red
)

PDO::FETCH_BOTH: Retorna a próxima linha como um array indexado por nome de coluna e número
Array
(
    [name] =&gt; banana
    [0] =&gt; banana
    [colour] =&gt; yellow
    [1] =&gt; yellow
)

PDO::FETCH_LAZY: Retorna a próxima linha como um objeto PDORow com nomes de colunas como propriedades
PDORow Object
(
    [name] =&gt; orange
    [colour] =&gt; orange
)

PDO::FETCH_OBJ: Retorna a próxima linha como um objeto anônimo com nomes de coluna como propriedades
kiwi</pre>
</div>
    </div>
   </div>
   <div class="example" id="example-2"><p><strong>Exemplo #2 Buscando linhas com um cursor navegável</strong></p>
    <div class="example-contents">
<div class="phpcode"><pre><code style="color: #000000"><span style="color: #0000BB">&lt;?php
</span><span style="color: #007700">function </span><span style="color: #0000BB">readDataForwards</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbh</span><span style="color: #007700">) {
    </span><span style="color: #0000BB">$sql </span><span style="color: #007700">= </span><span style="color: #DD0000">'SELECT hand, won, bet FROM mynumbers ORDER BY BET'</span><span style="color: #007700">;
    </span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">, array(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_CURSOR </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">CURSOR_SCROLL</span><span style="color: #007700">));
    </span><span style="color: #0000BB">$stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">();
    while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">$stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_NUM</span><span style="color: #007700">, </span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ORI_NEXT</span><span style="color: #007700">)) {
        </span><span style="color: #0000BB">$data </span><span style="color: #007700">= </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\t" </span><span style="color: #007700">. </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\t" </span><span style="color: #007700">. </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">2</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;
        print </span><span style="color: #0000BB">$data</span><span style="color: #007700">;
    }
}
function </span><span style="color: #0000BB">readDataBackwards</span><span style="color: #007700">(</span><span style="color: #0000BB">$dbh</span><span style="color: #007700">) {
    </span><span style="color: #0000BB">$sql </span><span style="color: #007700">= </span><span style="color: #DD0000">'SELECT hand, won, bet FROM mynumbers ORDER BY bet'</span><span style="color: #007700">;
    </span><span style="color: #0000BB">$stmt </span><span style="color: #007700">= </span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">, array(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_CURSOR </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">CURSOR_SCROLL</span><span style="color: #007700">));
    </span><span style="color: #0000BB">$stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">();
    </span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">$stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_NUM</span><span style="color: #007700">, </span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ORI_LAST</span><span style="color: #007700">);
    do {
        </span><span style="color: #0000BB">$data </span><span style="color: #007700">= </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\t" </span><span style="color: #007700">. </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\t" </span><span style="color: #007700">. </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #0000BB">2</span><span style="color: #007700">] . </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;
        print </span><span style="color: #0000BB">$data</span><span style="color: #007700">;
    } while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">$stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_NUM</span><span style="color: #007700">, </span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ORI_PRIOR</span><span style="color: #007700">));
}

print </span><span style="color: #DD0000">"Lendo para a frente:\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">readDataForwards</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">);

print </span><span style="color: #DD0000">"Lendo para trás:\n"</span><span style="color: #007700">;
</span><span style="color: #0000BB">readDataBackwards</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">);
</span><span style="color: #0000BB">?&gt;</span></code></pre></div>
    </div>

    <div class="example-contents"><p>O exemplo acima produzirá:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">Reading forwards:
21    10    5
16    0     5
19    20    10

Reading backwards:
19    20    10
16    0     5
21    10    5</pre>
</div>
    </div>
   </div>

   <div class="example" id="example-3"><p><strong>Exemplo #3 Ordem de construção</strong></p>
    <div class="example-contents"><p>
     Quando objetos são buscados através de <strong><code><a href="pdo.constants.fetch-modes.php#pdo.constants.fetch-class">PDO::FETCH_CLASS</a></code></strong>, as propriedades
     do objeto são atribuídas primeiro, e depois o construtor da classe é
     invocado. Entretanto, quando <strong><code><a href="pdo.constants.fetch-modes.php#pdo.constants.fetch-props-late">PDO::FETCH_PROPS_LATE</a></code></strong> também for informada,
     esta ordem é revertida, isto, é, primeiro o construtor é chamado, e
     depois as propriedades são atribuídas.
    </p></div>
    <div class="example-contents">
<div class="phpcode"><pre><code style="color: #000000"><span style="color: #0000BB">&lt;?php
</span><span style="color: #007700">class </span><span style="color: #0000BB">Person
</span><span style="color: #007700">{
    private </span><span style="color: #0000BB">$name</span><span style="color: #007700">;

    public function </span><span style="color: #0000BB">__construct</span><span style="color: #007700">()
    {
        </span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">tell</span><span style="color: #007700">();
    }

    public function </span><span style="color: #0000BB">tell</span><span style="color: #007700">()
    {
        if (isset(</span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">)) {
            echo </span><span style="color: #DD0000">"Eu sou </span><span style="color: #007700">{</span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">}</span><span style="color: #DD0000">.\n"</span><span style="color: #007700">;
        } else {
            echo </span><span style="color: #DD0000">"Eu não tenho um nome ainda.\n"</span><span style="color: #007700">;
        }
    }
}

</span><span style="color: #0000BB">$sth </span><span style="color: #007700">= </span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT * FROM people"</span><span style="color: #007700">);
</span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFetchMode</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_CLASS</span><span style="color: #007700">, </span><span style="color: #DD0000">'Person'</span><span style="color: #007700">);
</span><span style="color: #0000BB">$person </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">();
</span><span style="color: #0000BB">$person</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">tell</span><span style="color: #007700">();
</span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setFetchMode</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_CLASS</span><span style="color: #007700">|</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_PROPS_LATE</span><span style="color: #007700">, </span><span style="color: #DD0000">'Person'</span><span style="color: #007700">);
</span><span style="color: #0000BB">$person </span><span style="color: #007700">= </span><span style="color: #0000BB">$sth</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetch</span><span style="color: #007700">();
</span><span style="color: #0000BB">$person</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">tell</span><span style="color: #007700">();
</span><span style="color: #0000BB">?&gt;</span></code></pre></div>
    </div>

    <div class="example-contents"><p>O exemplo acima produzirá
algo semelhante a:</p></div>
    <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">Eu sou Alice.
Eu sou Alice.
Eu não tenho um nome ainda.
Eu sou Bob.</pre>
</div>
    </div>
   </div>
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-pdostatement.fetch-seealso">
  <h3 class="title">Veja Também</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="methodname"><a href="pdo.prepare.php" class="methodname" rel="rdfs-seeAlso">PDO::prepare()</a> - Prepara uma instru&ccedil;&atilde;o para execu&ccedil;&atilde;o e retorna um objeto de instru&ccedil;&atilde;o</span></li>
    <li><span class="methodname"><a href="pdostatement.execute.php" class="methodname" rel="rdfs-seeAlso">PDOStatement::execute()</a> - Executa ums instru&ccedil;&atilde;o preparada</span></li>
    <li><span class="methodname"><a href="pdostatement.fetchall.php" class="methodname" rel="rdfs-seeAlso">PDOStatement::fetchAll()</a> - Busca as linhas remanescentes de um conjunto de resultados</span></li>
    <li><span class="methodname"><a href="pdostatement.fetchcolumn.php" class="methodname" rel="rdfs-seeAlso">PDOStatement::fetchColumn()</a> - Retorna uma &uacute;nica coluna do pr&oacute;ximo registro de um resultado</span></li>
    <li><span class="methodname"><a href="pdostatement.fetchobject.php" class="methodname" rel="rdfs-seeAlso">PDOStatement::fetchObject()</a> - Busca o pr&oacute;ximo registro e retorna-o como um objeto</span></li>
    <li><span class="methodname"><a href="pdostatement.setfetchmode.php" class="methodname" rel="rdfs-seeAlso">PDOStatement::setFetchMode()</a> - Define o modo de carga de dados para esta instru&ccedil;&atilde;o</span></li>
   </ul>
  </p>
 </div>

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