Pues en lo personal yo prefiero el resource, de la siguiente manera
Código PHP:
$result = mysql_query($query);
/*El mensaje lo pongo a mostrar durante el desarrollo,
no me gusta luego mostrarle al usuario mensajes que
puedan mostrar las tablas y campos q hay en la BD*/
if (!$result) {
$message = 'Error en la consulta: ' . mysql_error() . "\n";
die($message);
}
//Y luego lo recorro asi
//tambien es posible con estas opciones
//mysql_result(), mysql_fetch_array(), mysql_fetch_row()
while ($row = mysql_fetch_assoc($result)) {
echo $row['campo1'];
echo $row['campo2'];
echo $row['campo3'];
echo $row['campo4'];
}
O no se si es que entendi mal la pregunta.
si a lo que te referias era a hacer una funcion que hiciera la consulta y decidir que debe devolver esta funcion yo prefiero que devuelva ya un array con los objetos formados