Multiple loops with PHP foreach?
<p>$result contains an array of data items from a database query.</p>

<p>$A is an empty array. I also have created an empty array called $B and so on.</p>

<p>I want to loop through all 26 letters of the alphabet. For each letter I want to loop through the array containing my database query results and push them onto their respective array. So 'Ant' and 'Antelope' get pushed onto array $A, 'Buffalo' onto array $B and so on.</p>

<p>Here's my problem PHP:</p>

<pre><code>$letter = 'A';
  for($count = 1; $count &lt;= 26; ++$count) {
    foreach ($result as $topic) {
      if (substr($topic-&gt;animal, 0, 1) == $letter //the first letter is A, B...
        array_push($A, $topic-&gt;animal);
      }
    }
  }
  $letter++;
}
</code></pre>

<ol>
<li><p>I think the internal array pointer is being moved to the end of $result because I only get animals starting with the letter A being pushed onto array $A. All other arrays ($B, $C etc.) are empty. In any case it only works once (for the letter A). reset($result) doesn't seem to work. How can I loop through $result multiple (26) times?</p></li>
<li><p>How do I change the array to be pushed onto when looping through the letters? In other words when $letter is incremented to B I want: array_push($B, $topic->animal);</p></li>
</ol>

<p>Thanks in advance.</p>
