title: 'fetch' in PDO gets only one result
body: <p>I have this code:</p>
  <pre><code>$sql = new PDO('mysql:host=localhost;dbname=b', 'root', 'root');
  $f = $sql-&gt;query('select * from user');
  $sql-&gt;setFetchMode(PDO::FETCH_ASSOC);
  
  while($row = $f-&gt;fetch()){
       print_r($row);
  }
  </code></pre>
  <p>The output is</p>
  <pre><code>Array
  (
      [id] =&gt; 1
      [name] =&gt; turki
      [mail] =&gt; ablaf
      [pass] =&gt; 144
  )
  Array
  (
      [id] =&gt; 2
      [name] =&gt; wrfwer
      [mail] =&gt; fwerf
      [pass] =&gt; werf
  )
  </code></pre>
  <p>And that's what I really want. But if I do this</p>
  <pre><code>&lt;?php
      $sql = new PDO('mysql:host=localhost;dbname=b', 'root', 'root');
      $f = $sql-&gt;query('select * from user');
      $f-&gt;setFetchMode(PDO::FETCH_ASSOC);
      print_r($f-&gt;fetch());
  ?&gt;
  </code></pre>
  <p>The output is</p>
  <pre><code>Array
  (
      [id] =&gt; 1
      [name] =&gt; turki
      [mail] =&gt; ablaf
      [pass] =&gt; 144
  )
  </code></pre>
  <p>It has one result, but I have two rows in the table; why is that?</p>