Grupo de resultados en orden alfabético PHP

Estoy usando el siguiente código para mostrar la base de datos de la imagen y el nombre de los sitios web.

<fieldset>  
    <h1>A</h1>          
    <ul>
        <?php foreach ($records as $key) { ?>
        <li class="siteli"> <a href="#" class="add">        
            <div id="site-icon"><img src="<?php echo $key->site_img; ?>" width="16" height=""></div>
            <p id="text-site"> <?php echo $key->site_name; ?></p>
        </li>
        <?php } ?>
    </ul>
</fieldset>

Ahora estoy tratando de agrupar estos resultados alfabéticamente agregando A, B, C, etc. como título.

Ejemplo,

A    
Amazon     
Aol    
Aol Mail

B    
Bing     
Bogger

Respuestas a la pregunta(3)

Su respuesta a la pregunta